List teams
curl --request GET \
--url https://service.abundly.ai/workspaceapi/teams \
--header 'Authorization: Bearer <token>'import requests
url = "https://service.abundly.ai/workspaceapi/teams"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://service.abundly.ai/workspaceapi/teams', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://service.abundly.ai/workspaceapi/teams",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://service.abundly.ai/workspaceapi/teams"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://service.abundly.ai/workspaceapi/teams")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://service.abundly.ai/workspaceapi/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"customerId": "<string>",
"teamsEnabled": true,
"teams": [
{
"id": "<string>",
"customerId": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"monthlyCreditLimit": 123,
"capabilityAdminSettings": {
"capabilities": {},
"defaultMode": "<string>",
"allowUserMcpServers": true,
"defaultCreditDetails": true,
"hideUnavailableCapabilities": true,
"defaultContact": "<string>"
},
"documentWriteAccess": {
"humanPolicy": "<string>",
"agentPolicy": "<string>"
},
"notificationSettings": {},
"members": [
{
"userId": "<string>",
"name": "<string>",
"email": "<string>",
"role": "<string>"
}
]
}
]
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}API Reference
List teams
All teams in the workspace, each with its tags, monthly credit limit and settings. Payload fields use the internal name for teams, so a team id appears as groupId.
GET
/
workspaceapi
/
teams
List teams
curl --request GET \
--url https://service.abundly.ai/workspaceapi/teams \
--header 'Authorization: Bearer <token>'import requests
url = "https://service.abundly.ai/workspaceapi/teams"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://service.abundly.ai/workspaceapi/teams', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://service.abundly.ai/workspaceapi/teams",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://service.abundly.ai/workspaceapi/teams"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://service.abundly.ai/workspaceapi/teams")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://service.abundly.ai/workspaceapi/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"customerId": "<string>",
"teamsEnabled": true,
"teams": [
{
"id": "<string>",
"customerId": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"monthlyCreditLimit": 123,
"capabilityAdminSettings": {
"capabilities": {},
"defaultMode": "<string>",
"allowUserMcpServers": true,
"defaultCreditDetails": true,
"hideUnavailableCapabilities": true,
"defaultContact": "<string>"
},
"documentWriteAccess": {
"humanPolicy": "<string>",
"agentPolicy": "<string>"
},
"notificationSettings": {},
"members": [
{
"userId": "<string>",
"name": "<string>",
"email": "<string>",
"role": "<string>"
}
]
}
]
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Workspace API key (wk_). GET endpoints require the Workspace read API scope, POST, PUT, PATCH and DELETE endpoints the Workspace write API scope, and sending or revoking invitations (POST and DELETE /workspaceapi/invites) the Invite members scope. A key stops working when it expires or is disabled.
Query Parameters
If true, include team members (with role) on each team. Defaults to false.
Only teams with exactly this name, ignoring case.
Only teams with this tag.

