Reference

Errors

Every error the API returns: the response shape, the numeric error codes, what each one means, and what to change to make the call succeed.

Errors return a non-2xx HTTP status and a JSON body with a stable machine-readable code:

Error body
{
  "success": false,
  "error_code": 1002,
  "error": "INVALID_API_KEY",
  "message": "The API key provided is not valid."
}
CodeNameWhen
1001MISSING_API_KEYA /v1 endpoint was called without X-API-Key.
1002INVALID_API_KEYThe key is malformed or revoked.
2001INVALID_IPThe IP address could not be parsed.
2003BATCH_TOO_LARGEMore than 100 items in a batch (1000 for bulk report).
3001RATE_LIMIT_KEYPer-key burst limit hit. Retry shortly.
3002RATE_LIMIT_IPPer-IP burst limit hit on a public endpoint.

HTTP status matches the class: 400 for validation, 401 for auth, 429 for rate limits, 5xx for server errors.