error_code and an error_message that tell you exactly what went wrong. Understanding these codes lets you build resilient integrations and diagnose issues quickly without guesswork.
HTTP status codes
The table below lists every status code the Atlas API can return and what each one means in practice.Error response format
All top-level errors use a consistent JSON envelope with two fields:error_code contains the HTTP status code as a string, and error_message contains a human-readable explanation prefixed with the error category.
Example: 400 Bad Request
Example: 410 Resource Gone
Example: 503 Service Unavailable
Document-level errors in OCR data
When individual documents fail to extract, the error surfaces inside theocr_data array rather than as a top-level HTTP error. Each entry in ocr_data includes an error_code and error_reason field alongside an empty data object:
A successful extraction has empty strings for both
error_code and error_reason. Always check these fields even when the HTTP response is 200 or 201.Target-level errors in address matching
The Address Match API can succeed at the request level (HTTP200) while reporting per-target failures inside the match_data array. Each element carries its own error_code and error_message:
null value for error_code indicates that target was processed successfully. A non-null value means that specific target failed while the others may have succeeded.

