Error Codes
Complete API error reference
Error Response Format
{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 45 seconds."
},
"meta": {
"schema_version": "1.0.0",
"request_id": "req_abc123",
"retry_after": 45
}
}
HTTP Status Codes
| Code | Status | Description |
| 200 | OK | Request successful |
| 400 | Bad Request | Invalid parameters |
| 401 | Unauthorized | Missing or invalid API key |
| 403 | Forbidden | Access denied to resource |
| 404 | Not Found | Resource does not exist |
| 429 | Too Many Requests | Rate limit exceeded |
| 500 | Internal Error | Server error |
| 502 | Bad Gateway | Upstream service error |
| 503 | Service Unavailable | Temporary maintenance |
Application Error Codes
| Code | HTTP | Description | Solution |
INVALID_API_KEY | 401 | API key not recognized | Check key format |
EXPIRED_API_KEY | 401 | API key has expired | Renew subscription |
RATE_LIMITED | 429 | Too many requests | Wait and retry |
QUOTA_EXCEEDED | 429 | Daily quota reached | Upgrade plan |
INVALID_PARAMETER | 400 | Bad request parameter | Check docs |
RESOURCE_NOT_FOUND | 404 | Entity not found | Verify ID/symbol |
NFT Layer Errors
| Code | Description |
INSUFFICIENT_FUNDS | Wallet balance too low |
NONCE_TOO_LOW | Transaction nonce conflict |
GAS_ESTIMATION_FAILED | Cannot estimate gas |
MINT_FAILED | NFT minting failed |
A2A Payment Errors
| Code | Description |
PAYMENT_NOT_FOUND | Transaction hash not found |
PAYMENT_PENDING | Payment not yet confirmed |
PAYMENT_INSUFFICIENT | Amount below feed price |
PAYMENT_EXPIRED | Payment too old (>1 hour) |
Troubleshooting
- 401 errors: Check
Authorization: Bearer YOUR_KEY header
- 429 errors: Implement exponential backoff, check
retry_after
- 5xx errors: Check status page, retry later
- Include
request_id when contacting support