Update a team
Part of Teams, 14 operations. The overview covers keys, scopes and errors.
PATCH /v1/teams/{team_id}
Rename a team or change its sharing settings. Only the fields sent change. Admins and owners only.
A caller key holding teams:write (Authorization: Bearer sbc_… or x-api-key: sbc_…), or a signed-in session.
Path parameters
team_idstring requiredThe team id.
Request body
namestringshare_defaultsobjectWhat a new member pools by default, per kind.
3 fields
mcpboolean requiredrulesboolean requiredskillsboolean required
share_policystringWho may add items to the pool. One of
members,editors.require_manual_confirmbooleanWhether an admin must confirm each new member before they receive team secrets.
Response 200
The updated team.
idstring requiredobjectstring requiredOne of
team.namestring requiredroleTeamRole requiredThe caller's role in this team. One of
owner,admin,editor,member.member_countinteger requiredcreated_atstring requiredshare_defaultsobject requiredWhat a new member pools by default, per kind.
3 fields
mcpboolean requiredrulesboolean requiredskillsboolean required
share_policystring requiredWho may add items to the pool. One of
members,editors.require_manual_confirmboolean required
Errors
| Status | Code | What to change |
|---|---|---|
| 400 | invalid_request | A parameter or body field is invalid; |
| 401 | unauthorized | Send a live caller key or session as |
| 403 | insufficient_scope | The key lacks the scope in |
| 404 | not_found | No such resource on this account; check the id. |
curl
curl -sS -X PATCH "https://superbot.gg/v1/teams/$TEAM_ID" \
-H "Authorization: Bearer $SUPERBOT_API_KEY" \
-H "content-type: application/json" \
-d '{"name":"your-name","share_defaults":{"mcp":true,"rules":true,"skills":true},"share_policy":"members"}'JavaScript
const teamId = 'TEAM_ID';
const res = await fetch(`https://superbot.gg/v1/teams/${teamId}`, {
method: 'PATCH',
headers: {
Authorization: `Bearer ${process.env.SUPERBOT_API_KEY}`,
'content-type': 'application/json',
},
body: JSON.stringify({"name":"your-name","share_defaults":{"mcp":true,"rules":true,"skills":true},"share_policy":"members"}),
});
console.log(res.status, await res.json());Python
import os
import requests
team_id = "TEAM_ID"
res = requests.request(
"PATCH",
f"https://superbot.gg/v1/teams/{team_id}",
headers={
"Authorization": f"Bearer {os.environ['SUPERBOT_API_KEY']}",
"content-type": "application/json",
},
json={"name":"your-name","share_defaults":{"mcp":True,"rules":True,"skills":True},"share_policy":"members"},
)
print(res.status_code, res.json())200 The updated team.
{
"id": "org_7c1e…",
"object": "team",
"name": "your-name",
"role": "owner",
"member_count": 0,
"created_at": "your-created-at",
"share_defaults": {
"mcp": true,
"rules": true,
"skills": true
},
"share_policy": "members",
"require_manual_confirm": true
}400 The request is malformed or a parameter is invalid; `param` names the field.
{
"error": "invalid_request",
"message": "A parameter or body field is invalid; param names it and issues lists every problem.",
"doc_url": "https://superbot.gg/developers#errors-invalid_request",
"request_id": "req_5f1c0a9e2b7d4c3a1e0f9b8d"
}401 The bearer is missing, malformed or unknown.
{
"error": "unauthorized",
"message": "Send a live caller key or session as Authorization: Bearer … or x-api-key. No key yet: create one at /account/api, or sign a user in at /auth.md.",
"doc_url": "https://superbot.gg/developers#errors-unauthorized",
"request_id": "req_5f1c0a9e2b7d4c3a1e0f9b8d"
}403 The key lacks a scope (insufficient_scope), is revoked, or may not call this route.
{
"error": "insufficient_scope",
"message": "The key lacks the scope in required_scopes; mint a key that holds it.",
"doc_url": "https://superbot.gg/developers#errors-insufficient_scope",
"request_id": "req_5f1c0a9e2b7d4c3a1e0f9b8d"
}404 No such resource on this account.
{
"error": "not_found",
"message": "No such resource on this account; check the id.",
"doc_url": "https://superbot.gg/developers#errors-not_found",
"request_id": "req_5f1c0a9e2b7d4c3a1e0f9b8d"
}No operation matches this filter.