Platform

Errors & rate limits

Consistent, typed errors across every endpoint and SDK.

Error shape

json
{
  "success": false,
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded. Retry after 4s.",
    "status": 429,
    "retry_after": 4
  }
}

Status codes

StatusCodeMeaning
400bad_requestMalformed request or invalid parameters.
401unauthorizedMissing or invalid API key.
402budget_exceededMonthly budget cap reached for this key.
404not_foundThe target URL or resource could not be reached.
422unprocessableThe page could not be parsed into the requested format.
429rate_limitedToo many requests — back off and retry.
500server_errorUnexpected error on our side. Safe to retry.
504timeoutThe target site took too long to respond.

Rate limits

Limits scale with your plan — from 30 req/min on Free to 600 req/min on Growth. Each response includes X-RateLimit-Remaining and X-RateLimit-Reset headers.

✓
The official SDKs handle 429 and 5xx for you with exponential backoff. Only failures after maxRetriessurface as exceptions — and none of them consume credits.