Send the page and the outcome
Start with a URL, inline HTML or Markdown. Add the viewport, full-page, selector, blocker, authentication and wait options the job needs.
Send a URL, HTML or Markdown in one API call. PageCapture runs the browser and returns an image, PDF, rendered HTML, clean Markdown or video.
Prefer to inspect the API first? Read the quickstart.
curl -G https://api.pagecapture.dev/v1/take \
-H "X-Access-Key: $PAGECAPTURE_KEY" \
--data-urlencode "url=https://example.com" \
-d "full_page=true" \
-d "format=png" \
-o screenshot.pngThoughtful essentials, made in small batches from natural materials.
A local script proves the happy path. Production adds queues, timeouts, fonts, codecs, lazy-loaded content, sticky headers and pages you do not control. PageCapture turns that operational work into one versioned API.
Start with a URL, inline HTML or Markdown. Add the viewport, full-page, selector, blocker, authentication and wait options the job needs.
Each job runs in an isolated Chromium context, behind queues, timeouts and an egress policy that blocks access to private networks.
Get raw bytes or JSON in the response, send the artifact to your own S3-compatible bucket, or receive a signed webhook.
Clean up the page, reproduce the right browser state and choose the output—all with explicit request parameters your team can review and reuse.
Block ads, cookie banners and chat widgets, or hide the selectors your output does not need.
Choose a device, wait for content, click or hover, inject CSS or JavaScript, then take the capture.
Use the same integration for images, PDF, rendered HTML, clean Markdown, video and animated GIF.
POST /v1/take
{
"url": "https://example.com/invoice/1042",
"format": "pdf",
"async": true,
"webhook_url": "https://your.app/hooks/capture",
"webhook_sign": true,
"external_identifier": "invoice_1042"
}
// 202 Accepted
{ "is_successful": true, "request_id": "req_01...", "status": "accepted" }We keep it only long enough to open the authenticated page. This is its entire lifecycle for every capture, including failed ones.
Read the security modelSeparated from the request and sealed with AES-256-GCM before anything is persisted.
Decrypted only in the isolated Chromium worker and injected into that capture.
The encrypted blob is zeroed and the browser context closes, on success or failure.
Viewport screenshot, full page, PDF or video: each successful non-cached capture costs one credit. Failures and cache hits cost nothing.
Every feature unlocked, capped at 100 successful captures a month.
Images, PDF, HTML and Markdown for a single production workload.
Adds scrolling screenshots and video capture.
Priority support and the highest limits for heavy pipelines.
First-party packages for TypeScript, Python, Go, Java, PHP, Ruby and .NET are implemented and tested as release candidates. Public registry promotion is still pending, so the HTTP quickstart remains the installable path today.
One successful capture that was not served from cache. Failures cost nothing — whether the page timed out, the selector was missing, or our infrastructure broke. Cache hits cost nothing either.
Yes, with cookies, an Authorization header, or custom headers. They are encrypted at rest, decrypted only inside the worker, destroyed when the job ends, and never written to a log.
Every URL, redirect, subresource, storage endpoint and webhook target is resolved and checked against blocked ranges — loopback, RFC1918, link-local, CGNAT, cloud metadata services, and the IPv4-mapped IPv6 form of all of them.
Without caching, the artifact lives minutes for a sync call and up to 24 hours for an async one, then it is deleted. With caching, it lives as long as the TTL you set, isolated to your organization.
Request logs keep the URL for your plan's retention window so you can debug. Query parameters that look like credentials are redacted. Cookies, headers and keys are never logged at all.
Create a free account, copy the request from the playground and get the actual file. No credit card, and failed or cached requests do not spend your allowance.
Prefer to read first? Every option is documented.