Reference
account
The caller's own identity, sign-in sessions and re-authentication. Index · shared schemas · errors.
| Procedure | Summary | REST | MCP tool | Stability |
|---|---|---|---|---|
account.get | Who the caller is: the signed-in user, the org API key, or the access token, with its scopes | GET | — | experimental |
account.sessions | List the signed-in user's active sessions, newest first | GET | — | experimental |
account.revokeSession | Sign out one of the user's own sessions; revoking the current one signs this caller out | POST | — | experimental |
account.reauthenticate | Confirm the user's password on the current session; trust-class procedures then accept it for 15 minutes. A wrong password answers FORBIDDEN (reauth-required) and spends this session's re-auth budget (5 in 15 minutes) and the user's (20 across sessions); a right one spends nothing. | POST | — | experimental |
account.grants | List the apps the signed-in user let act for them (the CLI's device sign-in, the studio, MCP clients), newest first, with when each was last used | GET | — | experimental |
account.revokeGrant | Revoke one of the user's grants: its refresh tokens stop at once, its access tokens within 10 minutes. NOT_FOUND (grant) for another user's or an ended one. | POST | — | experimental |
account.get
Who the caller is: the signed-in user, the org API key, or the access token, with its scopes
| REST | GET /v1/account/get (input as query parameters) |
| RPC | /rpc/v2/account/get |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: read-only, idempotent |
| Auth | session: any authenticated principal, no scope check |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{}Output:
{
principal: 'user' | 'apiKey' | 'delegated' | …
user?: User
signIn?: { password: boolean; providers: { id: string; name: string }[] }
apiKey?: { id: ApiKeyId; orgId: OrgId; projectId?: ProjectId; scopes: CloudScopeOut[] }
delegated?: {
subject: string
clientId: string
orgId: OrgId
projectId?: ProjectId
audience: string
scopes: CloudScopeOut[]
grant: 'code' | 'refresh' | 'device' | 'exchange' | …
actor?: string
expiresAt: Timestamp
}
}Errors: U.
Named types: ApiKeyId, CloudScopeOut, OrgId, ProjectId, Timestamp, User.
account.sessions
List the signed-in user's active sessions, newest first
| REST | GET /v1/account/sessions (input as query parameters) |
| RPC | /rpc/v2/account/sessions |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: read-only, idempotent |
| Auth | account:read |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{}Output:
{ sessions: AuthSessionInfo[] }Errors: U.
Named types: AuthSessionInfo.
account.revokeSession
Sign out one of the user's own sessions; revoking the current one signs this caller out
| REST | POST /v1/account/revoke-session (input as a JSON body) |
| RPC | /rpc/v2/account/revokeSession |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: idempotent, destructive |
| Auth | account:write |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{ sessionId: AuthSessionId }Output:
{ revoked: boolean }Named types: AuthSessionId.
account.reauthenticate
Confirm the user's password on the current session; trust-class procedures then accept it for 15 minutes. A wrong password answers FORBIDDEN (reauth-required) and spends this session's re-auth budget (5 in 15 minutes) and the user's (20 across sessions); a right one spends nothing.
| REST | POST /v1/account/reauthenticate (input as a JSON body) |
| RPC | /rpc/v2/account/reauthenticate |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: none |
| Auth | account:write |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{ password: Password }Output:
{ reauthenticatedAt: Timestamp }Errors: U.
Named types: Password, Timestamp.
account.grants
List the apps the signed-in user let act for them (the CLI's device sign-in, the studio, MCP clients), newest first, with when each was last used
| REST | GET /v1/account/grants (input as query parameters) |
| RPC | /rpc/v2/account/grants |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: read-only, idempotent |
| Auth | account:read |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{}Output:
{ grants: AccountGrant[] }Errors: U.
Named types: AccountGrant.
account.revokeGrant
Revoke one of the user's grants: its refresh tokens stop at once, its access tokens within 10 minutes. NOT_FOUND (grant) for another user's or an ended one.
| REST | POST /v1/account/revoke-grant (input as a JSON body) |
| RPC | /rpc/v2/account/revokeGrant |
| MCP | not a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: idempotent, destructive |
| Auth | account:write |
| Tenancy | none |
| Troupe Cloud | answered by the control plane |
| Stability | experimental, since 1.0 |
Input:
{ grantId: GrantId }Output:
{ revoked: boolean }Named types: GrantId.