Errors
The API uses standard HTTP status codes. Error responses are JSON with message or error and optional details.
HTTP status codes
| Field | Type | Description |
|---|---|---|
| 400 | Bad Request | Invalid request body, missing or invalid parameters |
| 401 | Unauthorized | Missing or invalid API key (Authorization header) |
| 403 | Forbidden | Valid key but insufficient permissions for this resource |
| 404 | Not Found | Resource (job, document, etc.) not found |
| 429 | Too Many Requests | Rate limit exceeded; retry after Retry-After or back off |
| 500 | Internal Server Error | Server error; retry with backoff |
Response shape
{
"message": "Human-readable error message",
"error": "Optional error code",
"details": {}
}Rate limits (429)
When you exceed rate limits, the response includes a Retry-After header when applicable. See Rate limits for limits per endpoint and plan.