HTTP status codes
URL-level failures from
/contents are reported in the statuses field of a successful 200 response, not as request-level errors. See Content fetch status tags.Error response structure
Error responses return arequestId, a human-readable error message, and a machine-readable tag:
Include the
requestId when contacting support for faster troubleshooting.Common error tags
Account, billing, and access
Request validation
Payment protocols
Requests paid through x402 or MPP can also return:Content fetch status tags
When/contents receives multiple URLs, one URL can fail while the others succeed. URL-level failures are returned in the statuses field and do not fail the request:
httpStatusCode describes the target page, not the /contents response.
These status tags are specific to
/contents; /search does not return a statuses field.
A /search request that succeeds can still return warnings about the request and notices about how the results were produced. Warnings and notices explains what each one means and what to do with it.
Getting help
- Check Exa Status when
500,503, or504errors persist. - Check Rate Limits for current limits.
- Review the endpoint’s API reference for request requirements.
- Contact hello@exa.ai with the response status, error body, and
requestId.