Errors
Understand the error response format and common status codes returned by the API.
Error Format
All API errors return a consistent JSON object containing a single error field with a descriptive message.
{
"error": "Detailed error message explaining what went wrong."
}HTTP Status Codes
400Bad RequestThe request was invalid or cannot be otherwise served. This usually means a missing required parameter or a validation error (e.g., invalid date format).
401UnauthorizedAuthentication failed. Ensure your API key is provided correctly in the Authorization header.
404Not FoundThe requested resource (e.g., a specific job ID) or endpoint does not exist.
429Too Many RequestsTwo distinct limits can produce a 429, and they need different handling — check the error message to tell them apart. A per-second rate limit ("Too many requests. Please slow down and retry.") clears within a second or two, so a short wait and retry is enough. A monthly quota limit ("Monthly request limit of X reached...") will not clear by waiting — retrying wastes requests; stop and upgrade your plan or wait for the next billing cycle instead.
500Internal Server ErrorSomething went wrong on our end. We've been notified and are looking into it.
Rate Limit Headers
Successful responses and per-second-limit 429s include rate limit headers, so you can track your usage proactively instead of waiting for a 429. They're absent on a monthly-quota 429 and on a 403 (tier doesn't allow API access) — those are rejected before the per-second bucket is even checked.
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 3
X-RateLimit-Type: listX-RateLimit-Limit and X-RateLimit-Remaining describe the per-second bucket for the request type (X-RateLimit-Type: list, detail, or geo) — not the monthly quota, which isn't exposed via headers. There is no Retry-After header; since the per-second bucket resets every second, a short fixed wait before retrying is sufficient.
X-RateLimit-Remaining to stay ahead of a 429 rather than reacting to one. If you are experiencing issues, please contact support.