Account actions
The account plane is one person's own account: their profile, sessions, the apps they have allowed to act for them, their personal API keys and trusted devices. Only that person reaches it — in the console, or through a token they delegated. No management key acts as a person, and there is no account id in any path.
Every row below is one action, reached through four doors that run the same code, with the same authorization, validation, approvals and Audit log entry: the console, the REST API, the MCP server and the cbox CLI. See Actions for how that works and Planes and hosts for where each plane is served.
|
|
| REST |
https://<host>/api/v1/me/… with a token you delegated — on your environment's host, or on the platform root for a workspace team member or operator |
| MCP |
/mcp on the same host, signed in as yourself |
| CLI |
cbox login, then the command below |
| OpenAPI |
/api/v1/me/openapi.yaml on the host above — public, no key needed (source); every operation carries x-action, x-scope and x-danger |
Danger is how much harm the action can do in the wrong hands: read only reads; write changes something another write can undo; destructive removes or revokes; critical mints credentials, takes over access or changes how people sign in. MCP clients are told a destructive or critical tool is destructive, the CLI asks before running one, and an approval policy keys on it.
Contents
API keys
account.api_keys.create
Create an API key of your own for one of this environment's apps, in an organization you belong to. The value is returned once, as token.
|
|
| REST |
POST /api/v1/me/organizations/{organization_id}/api-keys → 201 |
| Scope |
account:api_keys:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
critical |
| MCP tool |
account_api_keys_create |
| CLI |
cbox id account api_keys create <organization_id> |
| Secret |
data.token — shown once, never kept for an idempotent replay |
| Input |
Type |
Required |
Description |
organization_id |
string (path) |
yes |
|
client_id |
string |
yes |
The app this key is for. At most 255 characters. |
name |
string |
yes |
At most 120 characters. |
permissions |
list of string |
no |
What the key may do in the app — each one a permission you hold there. Empty: it only identifies you. At most 200 items. |
expires_at |
string (date-time), nullable |
no |
When it stops working. Left out, it does not expire. |
account.api_keys.revoke
Revoke one of your own API keys.
|
|
| REST |
DELETE /api/v1/me/organizations/{organization_id}/api-keys/{key_id} → 204 |
| Scope |
account:api_keys:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
destructive |
| MCP tool |
account_api_keys_revoke |
| CLI |
cbox id account api_keys revoke <organization_id> <key_id> |
| Input |
Type |
Required |
Description |
organization_id |
string (path) |
yes |
|
key_id |
string (path) |
yes |
|
Applications
account.applications.revoke
Withdraw an application's access to your account; it must ask you again to act as you.
|
|
| REST |
DELETE /api/v1/me/applications/{client_id} → 204 |
| Scope |
account:applications:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
destructive |
| MCP tool |
account_applications_revoke |
| CLI |
cbox id account applications revoke <client_id> |
| Input |
Type |
Required |
Description |
client_id |
string (path) |
yes |
|
Devices
account.devices.remove
Remove one of your trusted devices; it is no longer asked to approve anything.
|
|
| REST |
DELETE /api/v1/me/devices/{device_id} → 204 |
| Scope |
account:devices:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
destructive |
| MCP tool |
account_devices_remove |
| CLI |
cbox id account devices remove <device_id> |
| Input |
Type |
Required |
Description |
device_id |
string (path) |
yes |
|
Organizations
account.organizations.leave
Leave one of your own organizations. The last owner cannot leave — transfer ownership first.
|
|
| REST |
POST /api/v1/me/organizations/{organization_id}/leave → 204 |
| Scope |
account:organizations:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
destructive |
| MCP tool |
account_organizations_leave |
| CLI |
cbox id account organizations leave <organization_id> |
| Input |
Type |
Required |
Description |
organization_id |
string (path) |
yes |
The organization you are leaving — one you are a member of. At most 64 characters. |
Profile
account.profile.update
Change the display name on your own account.
|
|
| REST |
PATCH /api/v1/me/profile → 200 |
| Scope |
account:profile:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
write |
| MCP tool |
account_profile_update |
| CLI |
cbox id account profile update |
| Input |
Type |
Required |
Description |
name |
string |
yes |
Your display name. At least 1 characters. At most 120 characters. |
Sessions
account.sessions.revoke
Sign out one of your own sessions.
|
|
| REST |
DELETE /api/v1/me/sessions/{session_id} → 204 |
| Scope |
account:sessions:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
destructive |
| MCP tool |
account_sessions_revoke |
| CLI |
cbox id account sessions revoke <session_id> |
| Input |
Type |
Required |
Description |
session_id |
string (path) |
yes |
|
account.sessions.revoke_others
Sign out every one of your sessions except the one you are using.
|
|
| REST |
POST /api/v1/me/sessions/revoke-others → 200 |
| Scope |
account:sessions:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
critical |
| MCP tool |
account_sessions_revoke_others |
| CLI |
cbox id account sessions revoke_others |
Takes no input.
Sign-in methods
account.passkeys.remove
Remove one of your passkeys.
|
|
| REST |
DELETE /api/v1/me/passkeys/{passkey_id} → 204 |
| Scope |
account:sign_in:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
critical |
| MCP tool |
account_passkeys_remove |
| CLI |
cbox id account passkeys remove <passkey_id> |
| Input |
Type |
Required |
Description |
passkey_id |
string (path) |
yes |
|
account.social.unlink
Disconnect a social account from yours — never the last way you can sign in.
|
|
| REST |
DELETE /api/v1/me/social/{provider} → 204 |
| Scope |
account:sign_in:write — on an access token you delegated; it acts on your own account only. No management key is accepted. |
| Danger |
critical |
| MCP tool |
account_social_unlink |
| CLI |
cbox id account social unlink <provider> |
| Input |
Type |
Required |
Description |
provider |
string (path) |
yes |
The provider's key, for example google. |