Errors
Errors use the HTTP status code and a JSON body of one shape:
{
"error": {
"code": "quota_exhausted",
"message": "The monthly allowance of 25,000 calls is used. It renews at 2026-12-01T00:00:00.000Z, or you can change plan in the console.",
"details": {}
}
}
| Status | Code | Meaning |
|---|---|---|
| 400 | invalid_json, operation-specific codes | The request is malformed or a value is out of range. |
| 401 | invalid_api_key | The key is missing, unknown or revoked. |
| 403 | plan_excludes_service | The plan does not include this API. |
| 403 | fact_limit_reached | The Memory API holds as many facts as the plan allows. |
| 404 | not_found | No such endpoint or object. |
| 413 | body_too_large | The request body is larger than 10 MB. |
| 429 | rate_limited | Too many requests per second. Retry after the number of seconds in Retry-After. |
| 429 | quota_exhausted | The allowance of the current window is used. |
| 503 | service_unavailable | The API is temporarily unavailable. Retry with a growing delay; see Status. |
| 504 | upstream_timeout | The API did not answer in time. |
Each API reference lists the codes of its own operations.