Error format
Every error response has the same shape: a JSON object with a singleerror field.
Status codes
Handling specific cases
402 — Insufficient credits
The balance check happens before scraping, so a 402 means nothing was scraped and nothing was billed. Top up viaPOST /credits/buy and retry.
403 — Residential quota exhausted
During the beta,residential proxies run on a small free trial quota, separate from your
credit balance. Once it’s used up (and residential isn’t unlocked on your account), a
residential request returns:
datacenter or none in the meantime — see proxy_type.
429 — Rate limit
Requests are rate limited per API key. When you exceed the limit, the response includes aRetry-After header (in seconds) telling you when to try again.
