errorCode— machine-readablemessage— human-readable explanation
Status codes
| Code | Meaning | What to do |
|---|---|---|
400 | Bad request | Fix the request (invalid or missing parameters) |
401 | Unauthenticated | Send a valid API key in X-API-Key (not Authorization: Bearer) |
402 | Out of credits | Stop — wait for reset or upgrade |
403 | Forbidden | Endpoint not included in your plan |
404 | Not found | Check the ID or resource |
422 | Validation error | Fix request based on message |
429 | Rate limited | Wait and retry |
5xx | Server error | Retry with backoff |
Retry rules
- Retry only:
429and5xx - Do not retry:
400,401,403,404,422 - Stop on:
402(credits exhausted)
Backoff strategy
- On
429→ wait forX-RateLimit-Reset - On
5xx→ retry with exponential backoff (start ~1s, max 3–5 attempts)
Notes
404= resource doesn’t exist- Empty results (
200+[]) = valid, but no data 400and5xxare not charged- Per-result endpoints only charge for data returned