Errors use one shape:
{
"error": {
"type": "invalid_request_error",
"code": "invalid_agent_field",
"message": "status must be draft or published",
"param": "status"
}
}
| Status | Meaning |
|---|---|
| 400 | Invalid input (code and param say which) |
| 401 | Missing or invalid API key |
| 402 | Not enough Credits to start the call |
| 403 | The key is read-only, or the agent is unavailable |
| 404 | No such agent, call or campaign in this workspace |
| 409 | Wrong state (e.g. starting a running campaign), a provider account is not connected, or the number is on the do-not-call list (do_not_call) |
| 429 | Too many requests; slow down and retry |
The workspace's Voice API requests of the last 30 days (time, endpoint, status, duration, key and error code; no bodies) are listed under API keys → API request log.
Reads are limited to 120 requests a minute per key, writes and calls to 30.
Calls are billed per minute from the workspace's Credits, the same balance the dashboard uses. The current rates are on the pricing page.