Responses and errors

What comes back, and what to do when it doesn't work.

Success responses

StatusMeaningBody
200Screenshot capturedRaw image bytes (PNG or JPEG)

Client errors

StatusMeaningWhen
400Bad requestMissing url, invalid parameters
401UnauthorisedInvalid or expired API key
402Payment requiredNo API key provided (x402 flow), or insufficient balance
429Rate limitedToo many requests. See rate limits

Server errors

StatusMeaningWhen
500Internal errorBrowser crashed, page failed to load, or server issue
504TimeoutPage took too long to render (30s limit)

Error response format

All error responses return JSON:

{
  "error": "Insufficient balance",
  "code": "INSUFFICIENT_BALANCE",
  "balanceMillicents": 0,
  "costMillicents": 5000
}

The 402 response (x402)

A 402 without an API key is not an error — it's the x402 payment negotiation. The response contains payment instructions that an agent can act on automatically. See agent payments for the full flow.