HTTP status codes
| Status | Description |
|---|---|
200 | Success. |
400 | Bad request — document download failed or invalid URL. |
401 | Unauthorized — invalid or missing API key. |
402 | Insufficient credits — top up your balance to continue. |
404 | Not found — deployment, entry, or batch doesn’t exist. |
422 | Validation error — invalid request body or document format. |
503 | Service temporarily unavailable due to high load. Retry with exponential backoff. |
Error response format
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable error code. |
message | string | Human-readable description. |
details | object or null | Additional context when available. |
Processing errors vs. API errors
- API errors (4xx): the request itself failed. No document was processed.
- Processing errors (in the
errorsfield of a200response): the document was processed but some fields couldn’t be extracted or validated.
status: "completed_with_errors" is still a 200 OK:
Retry strategy
For503 (high load) responses, implement exponential backoff: