Skip to content

Product

Screenshot API for production teams

One REST API to capture any page as PNG, JPEG, WebP, PDF, HTML, or video — with country routing, automation steps, ad blocking, and direct integrations to your cloud storage and workflows.

80+
Countries
6
Output formats
145M+
Screenshots served

One request, multiple outputs: image, PDF, HTML, and video.

How it works

Submit a job, retrieve the result

The ScreenshotCenter API is queue-based and async. You send a POST to /v1/screenshot with your URL and options, receive a job ID in return, and then poll or use a webhook to collect the finished output.

Jobs run inside real Chromium browsers distributed across global browser clients. Every request benefits from automatic retries, stall detection, and 5-minute timeout protection — no infrastructure to manage.

  1. 1

    Submit the job

    POST /v1/screenshot with your URL and parameters. Receive a job ID immediately.

  2. 2

    Browser processes the page

    A real Chromium instance loads the page, executes JavaScript, runs automation steps, and captures output.

  3. 3

    Retrieve results

    Poll /v1/screenshot/:id or receive a webhook. Download PNG, PDF, HTML, or video from the storage URL.

Output Formats

Six output formats from one request

Combine format=png, video=true, pdf=true, and html=true in a single request.

PNG screenshot output

All outputs generated from a single API request — combine any flags in the same call.

See all output options →

API Example

Capture any page in your language of choice

SDKs are available for JavaScript, Python, PHP, Go, Ruby, Java, and C#. Every SDK handles job submission, polling, and output retrieval with full TypeScript types where applicable.

curl -X POST https://api.screenshotcenter.com/v1/screenshot \
  -H "X-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "size": "page",
    "format": "png",
    "country": "us"
  }'

Capabilities

Everything your capture workflow needs

The API is designed to handle the full range of production screenshot scenarios — from simple public page captures to authenticated workflows, geo-targeted rendering, and multi-format delivery pipelines.

API Parameters

Key request parameters

Every parameter is optional except url. Combine them to precisely control how the page is loaded, rendered, and delivered.

ParameterTypeDescription
urlstringURL to capture
sizestringViewport size or "page" for full-page
formatstringOutput format: png, jpeg, webp
countrystringRoute through a browser in this country
pdfbooleanGenerate a companion PDF
htmlbooleanReturn the rendered HTML source
videobooleanRecord a screencast video
stepsarrayAutomation steps before capture
targetstringCSS selector to crop to an element
hide_adsbooleanBlock ads and trackers
hide_popupsbooleanDismiss cookie banners and overlays
delaynumberWait in ms before capturing
max_waitnumberMax ms to wait for page load
cookiesarrayInject session cookies
headersobjectCustom HTTP request headers

See the full API reference for the complete parameter list including PDF options, viewport controls, and batch configuration.

Use Cases

What teams build with the Screenshot API

From continuous monitoring to on-demand report generation — the Screenshot API fits any workflow that needs reliable, browser-accurate page captures at scale.

📊

Website monitoring

Capture production pages on a schedule and detect visual regressions, outages, or content anomalies before users do.

  • Daily homepage snapshots
  • Price change detection
  • Feature flag state verification
🌍

Geo-targeted rendering

Validate that pages render correctly in each market — currency formats, regional banners, localized fonts, and legal disclosures.

  • Multi-country pricing validation
  • GDPR consent banner checks
  • Localized content audits
🧪

Visual regression testing

Integrate screenshot captures into CI/CD pipelines to catch rendering bugs before they reach production.

  • Pre/post-deploy diffs
  • Component-level captures with CSS selectors
  • Responsive layout checks
📄

PDF & report generation

Render dynamic pages — invoices, dashboards, charts — as pixel-accurate PDFs for client delivery or compliance records.

  • Invoice and receipt PDFs
  • Analytics report exports
  • Compliance evidence documents
🛒

Ecommerce compliance

Archive product pages, pricing changes, and ad landing pages with timestamped evidence for legal and competitive intelligence.

  • Product listing snapshots
  • Competitor price monitoring
  • Ad copy archival
🤖

Automation pipelines

Feed screenshot outputs into downstream workflows via Zapier, Make, webhooks, or S3-compatible storage.

  • Slack screenshot alerts
  • Google Drive archival
  • S3 batch delivery

Integrations

Send outputs to your existing stack

Every screenshot job can automatically deliver outputs to cloud storage, post to Slack, trigger Zapier zaps, or call your webhook — no manual file handling required.

See all integrations →

Pricing

Start free, scale on demand

Free plan includes 500 captures per month with full feature access. Paid plans unlock higher volume, priority queues, and SLA-backed support.

Trial

500 screenshots/month

Free

  • Block ads and cookie banners
  • PNG, JPEG and WebP
  • Save HTML
  • Full page screenshots
Try free

Starter

2,000 screenshots/month

$15 / month

  • Block ads and cookie banners
  • Render PDFs, HTML
  • PNG, JPEG and WebP
  • Full page screenshots
Start now

Most Popular

Plus

5,000 screenshots/month

$35 / month

  • Block ads and cookie banners
  • Render PDFs, HTML
  • PNG, JPEG and WebP
  • Full page screenshots
Start now

Compare all plans including Enterprise and On-Premise →

Frequently asked questions

What browsers does the API use?

ScreenshotCenter uses real Chromium/Chrome instances distributed across global browser clients. This ensures accurate rendering of JavaScript-heavy pages, dynamic content, and modern CSS.

How do I capture a full-page screenshot?

Pass "size": "page" in your request. The browser will scroll through the entire page and return a screenshot of the full document height — not just the visible viewport.

Can I capture screenshots from a specific country?

Yes. Pass the "country" parameter with a country code (e.g. "fr", "de", "jp"). The request will be routed to a browser client running in that country, with the correct IP, locale, and geolocation settings.

What is the job model? Is it synchronous?

Requests are queued and processed asynchronously. You submit a job, receive an ID, and then poll /v1/screenshot/:id or use a webhook to retrieve the result when ready. This keeps the API reliable under high load.

Can I generate PDF and screenshot in the same request?

Yes. Send a single request with "pdf": true and you will receive both a screenshot and a PDF. The same applies for HTML and video — each output is returned alongside the screenshot from one job.

How do I block cookie banners before capturing?

Pass "hide_popups": true to automatically dismiss common cookie consent overlays and GDPR banners. Combine with "hide_ads": true to remove ad slots and trackers from the captured output.

Is there a free tier?

Yes. The free Trial plan includes 500 screenshots per month with PNG/JPEG/WebP output, full-page capture, ad and popup blocking, batches, and app integrations — available in 2 countries (USA, Germany). No credit card required. Upgrade to Starter or higher for PDF/HTML output and additional countries.

Do you support batch screenshot jobs?

Yes. Submit a URL list and receive a batch job ID. All standard capture options apply to every URL in the batch. Results are delivered as a ZIP archive or pushed to your cloud storage automatically.

Ready to start capturing?

Create a free account and take your first screenshot in minutes. 500 captures per month, no credit card required, full API access from day one.