Skip to main content
The capture API returns JSON. It does not return raw image or PDF bytes from POST /v1/screenshot.

Three outcomes for a submission

With a job lookup, HTTP 200 and outer ok: true mean the job was retrieved. Inspect data.state and data.result.ok to determine the capture outcome.

Capture metadata

data_url is optional in the shared engine contract. Hosted REST integrations should use cdn_url; do not rely on embedded base64 output.

Diagnostics and completeness

When render_diagnostics is present, check truncated before assuming a long page was fully captured. algorithm identifies by_sections, native, or element; sections records the capture section count. scroll_height and device_scale_factor help interpret output size. Validate the returned metadata against your application’s needs. For example, a visual monitoring job may require known content and a minimum output height. Configure readiness and quality checks rather than treating every rendered page as the expected page.

Artifact lifetime

cache_ttl controls reuse of an existing capture; it does not promise permanent artifact storage or a particular URL lifetime. Download completed artifacts promptly. Store your own copy for reports, archives, or audit evidence. API JSON responses use Cache-Control: no-store. Do not use HTTP response caching as a substitute for job tracking or the capture cache.