Reference for common error codes used by the Exa API
Code | Overview |
---|---|
400 - Bad Request | Cause: Invalid request parameters, malformed JSON, missing required fields Solution: Check request body format, validate parameters, ensure API key is correctly formatted |
401 - Unauthorized | Cause: Missing or invalid API key Solution: Verify your API key is correct and active, ensure proper authentication headers |
403 - Forbidden | Cause: Valid API key but insufficient permissions or rate limit exceeded Solution: Check feature access permissions or implement rate limiting |
404 - Not Found | Cause: Resource not found (e.g., Webset, task, or URL doesn’t exist) Solution: Verify the resource identifier exists and is accessible |
409 - Conflict | Cause: Resource already exists (e.g., Webset with same externalId) Solution: Use a different identifier or update the existing resource |
429 - Too Many Requests | Cause: Rate limit exceeded Solution: Implement exponential backoff and reduce request rate |
500 - Internal Server Error | Cause: Issue on our servers Solution: Retry your request after a brief wait and contact us if the issue persists |
502 - Bad Gateway | Cause: Upstream server issue Solution: Retry the request after a brief delay |
503 - Service Unavailable | Cause: Service temporarily down Solution: Retry after delay, check for maintenance announcements |
requestId
field and error
message:
requestId
when contacting support for faster troubleshooting./contents
endpoint, specific errors are returned in the statuses
field rather than HTTP error codes. This allows for granular error handling when fetching multiple URLs.
Tag | HTTP Code | Description | How to Handle |
---|---|---|---|
CRAWL_NOT_FOUND | 404 | Content not found at the specified URL | Verify the URL is correct and accessible |
CRAWL_TIMEOUT | 408 | Request timed out while fetching content | Retry the request or increase timeout if available |
CRAWL_LIVECRAWL_TIMEOUT | 408 | Live crawl operation timed out | Try again with livecrawl: "fallback" or livecrawl: "never" |
SOURCE_NOT_AVAILABLE | 403 | Access forbidden or source unavailable | Check if the source requires authentication or is behind a paywall |
CRAWL_UNKNOWN_ERROR | 500+ | Other crawling errors | Retry the request; contact support if persistent |