All API endpoints return JSON error bodies with a consistent structure. Below are the common error codes across all endpoints.
Error Reference
| Code | Error | Description |
|---|---|---|
| 401 | missing_api_key | No API key provided in headers |
| 401 | invalid_api_key | API key is invalid or revoked |
| 403 | domain_not_owned | Target domain is not connected to your account (does not apply to API Platform users) |
| 403 | api_key_domain_scope_mismatch | API key is valid but scoped to a different domain |
| 403 | no_seo_spider_access | Your plan does not include SEO Spider access |
| 403 | on_demand_limit_reached | Monthly on-demand SEO audit limit reached |
| 403 | prompt_limit_reached | Plan prompt monitor allocation exceeded. Upgrade your plan or deactivate existing prompts. |
| 409 | run_already_active | An SEO audit is already running for this domain |
Best Practices
- Send Accept header — Always include
Accept: text/htmlfor bot/crawler requests to maximize prerender success. - Rotate API keys — Regularly rotate and revoke compromised keys from your dashboard.
- Use prewarm wisely — Enable prewarm for critical pages to ensure instant cache hits after invalidation.
- Handle 304 responses — When you get a 304, follow the
Locationheader or fetch directly from origin.
API Collections
Explore and test the API using these interactive platforms:
