Errors
Errors are JSON with a message for people and, where you can act on it, a code.
| Status | Meaning | What to do |
|---|---|---|
| 400 / 422 | A field is invalid | Fix the request; message names the field |
| 401 | Missing, unknown or expired API key | Check the key and its environment; rotate an expiring key |
| 403 | The key lacks the scope, or is used from an address not on its list | Change the key's limits in Settings → API keys; changes apply within a minute |
| 402 | insufficient_balance or payment_hold | Top up in Billing, or settle the open payment |
| 404 | Not found for this key | Another organization's or environment's data looks the same as none |
| 409 | Not ready, or a duplicate in flight | Retry later; for results, wait for the webhook |
| 429 | Too many requests, or sandbox_daily_limit (the day's free sandbox sessions with real checks are used) | Back off and retry; use a sandbox_scenario or wait for midnight UTC |
| 5xx | A problem on our side | Retry with the same Idempotency-Key |