Troubleshooting
Every error the API returns has a stable error.code. Find yours below for what it means, the usual cause and the fix. The general envelope and status codes are on the Errors page.
| Code | Status | Meaning | Retry? |
|---|---|---|---|
unauthorized | 401 | The request reached the API but carried no usable key. | no |
ip_not_allowed | 403 | The key has an IP allowlist and this request came from an address outside it. | no |
account_suspended | 403 | Every call on this account is blocked until the account is reinstated. | no |
daily_cap_exceeded | 402 | The free tier allows 500 credits a day (about 50 basic calls). Today's allowance is used up. | after top-up |
monthly_cap_exceeded | 402 | The free tier's 1,500 credits for this calendar month are used up. | after top-up |
trial_exhausted | 402 | The trial credit balance on this account is zero. | after top-up |
insufficient_credits | 402 | A pay-as-you-go or paid account has no credits left. | after top-up |
quota_exhausted | 402 | The plan's monthly credit quota is used and overage is not enabled on the account. | after top-up |
rate_limited | 429 | Too many requests in the current minute for your plan. The response carries Retry-After and X-RateLimit-* headers. | after Retry-After |
missing_param | 400 | A required query parameter is absent. The message names it. | no |
invalid_param | 400 | A parameter is present but malformed or out of range. The message says which. | no |
not_found | 404 | The path does not exist, or a path value (planet, varga, star name) is unknown. | no |
data_unavailable | 503 | The calculation needs data the server does not have for this input. | no |
internal_error | 500 | Something failed on our side for this request. | with backoff |