Screenshot API

A screenshot API that returns the file, not a job to poll

One GET request in, one PNG out. No queue to poll, no SDK to install, no browser to keep alive.

screenshot api · request and resultPAGECAPTURE / 01
cURL
curl -G https://api.pagecapture.dev/v1/take \
  -H "X-Access-Key: $PAGECAPTURE_KEY" \
  --data-urlencode "url=https://example.com" \
  -d "format=png" \
  -o screenshot.png
Capture result
succeeded
https://example.com
Noma
Shop now
NEW COLLECTION

Objects for slower mornings.

Thoughtful essentials, made in small batches from natural materials.

Explore the collection
No. 01 · Hinoki
PLANT-BASEDMADE IN SMALL BATCHESREFILLABLE
Artifact
PNG · 1440×900
Billing
1 credit
Engine
stable

Synchronous by default

The response body is the image. Switch to async only when you want to.

Every format on one endpoint

PNG, JPEG, WebP, AVIF, TIFF, GIF, PDF, HTML, Markdown and video.

Real device emulation

Presets set viewport, scale, touch and user agent together, so pages behave as they would on the device.

Charged on success only

Timeouts, missing selectors and our own failures cost nothing. Cache hits are free too.

Pricing

One credit per successful capture. Failures and cache hits are free.

Free
$0
100 credits
Basic
$10
2,000 credits
Growth
$47
10,000 credits
All plans

Questions this raises

Do I need to install anything?

No. It is an HTTP endpoint — curl, fetch or requests is enough. SDK snippets are generated in the playground if you want typed options.

How fast is a capture?

It depends almost entirely on the page you are capturing. We do not publish an average, because ours would say more about the sample of pages than about the service.

Can I capture a page that needs a login?

Yes — cookies, an Authorization header or custom headers, sent over POST. They are encrypted and destroyed when the job ends.