Errors
Every error response uses a consistent JSON shape with an error code and a human-readable message.
| Status | Error | Cause |
|---|---|---|
| 400 | Bad Request | Missing or invalid parameter. |
| 401 | Unauthorized | API key missing, invalid, or revoked. |
| 402 | Payment Required | Quota exhausted with no active subscription. |
| 403 | Forbidden | Your plan does not support this feature. |
| 422 | Unprocessable | Validation failed or the browser could not render the target URL. |
| 429 | Too Many Requests | Per-minute rate limit or monthly quota exceeded. |
| 503 | Service Unavailable | Screenshot engine temporarily offline. Retry after a few seconds. |
| 500 | Server Error | Unexpected internal error. Contact support with the X-Request-Id header value. |
Response
{"error":"Validation failed.","code":"VALIDATION_ERROR","details":{"url":["The url field is required when source is url."]}}