Every error response is JSON:Documentation Index
Fetch the complete documentation index at: https://polyfeed.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Status codes
| Status | Cause | Retry? |
|---|---|---|
400 Bad Request | Invalid query params, malformed JSON body, unsupported timeframe | No — fix the request |
401 Unauthorized | Missing/bad Authorization header | No — supply a valid key |
403 Forbidden | Tier doesn’t grant the coin or route | No — upgrade or change request |
404 Not Found | Unknown coin, market, slug, chain, or out-of-range timestamp | No |
413 Payload Too Large | Body exceeds 100 KiB | No — shrink the body |
429 Too Many Requests | Per-key rate limit hit | Yes — honor Retry-After |
500 Internal Server Error | Bug or upstream outage | Yes — exponential backoff |
503 Service Unavailable | Database/indexer transient failure | Yes — backoff |
504 Gateway Timeout | Request exceeded 30 s | Maybe — narrow query window |
Idempotency
Read endpoints are idempotent — safe to retry. Billing endpoints (/v1/billing/x402/settle) are idempotent on (provider, providerRef). Retrying the same payment payload after a transient error will not double-charge or double-provision.
Reporting bugs
X-Request-Id header is set on every response. Include it when filing issues.