Get a single budget by scope
Returns one budget with its live usage, addressed by the {scope} path segment: use account for the account-wide budget, or a key/agent budget's scopeId (the API key or agent id it targets).
Returns one budget with its live usage, addressed by the {scope} path segment: use account for the account-wide budget, or a key/agent budget's scopeId (the API key or agent id it targets). The usage fields sendsLast24h, newRecipientsLastHour, and accountHasComplaint are computed at request time from the sends attributed to that scope. Returns 404 when no budget is configured for the scope. Requires the budgets:read scope.
Scope: budgets:read. Send the API key as a bearer token; Scopes lists what each one reaches.
Request
Response
200 Success. Body: application/json, BudgetResponse.
| Field | Type | Required | Description |
|---|---|---|---|
budget | Budget | yes |
Errors
Every error has the same body, {"error": {"type", "code", "message", "param"}}; branch on code. Errors lists every code.
| Status | Meaning |
|---|---|
400 | The request is malformed or a value is invalid (invalid_request, invalid_domain, idempotency_key_mismatch). |
401 | The API key is missing or invalid. |
403 | The key lacks the scope this endpoint needs (scope_missing) or may not do this (not_permitted). |
404 | No such resource in this account (resource_not_found). |
422 | The request is well-formed but a field failed validation (validation_failed). |
429 | Rate limit, plan limit, budget or spend cap reached (rate_limited, plan_limit_reached, budget_exceeded, spend_cap_reached). |
500 | An unexpected error; retry with backoff, then contact support (internal_error). |
Set or replace a budget
Creates or replaces the budget for a scope: account (omit scopeId), or key/agent (each requires a scopeId you own — an API key id (a UUID) for key, or an agent's id or portable agt_… id for agent).
Delete a budget for a scope
Permanently removes the budget for the {scope} path segment — account, or a key/agent budget's scopeId — and returns 204 No Content with an empty body.