✦ Now in public beta

Screenshot any URL.
In one API call.

Pixel-perfect screenshots and PDFs from any URL — powered by a real Chromium browser. No setup, no browser farm.

Start for free → Read the docs
terminal
# Capture a full-page screenshot
curl "https://api.snapapi.dev/v1/screenshot?url=https://github.com&fullPage=true" \
  -H "x-api-key: sk_your_key_here" \
  --output screenshot.png

# Generate a PDF
curl "https://api.snapapi.dev/v1/pdf?url=https://example.com&format=A4" \
  -H "x-api-key: sk_your_key_here" \
  --output page.pdf

Everything you need, nothing you don't

A focused API surface that just works.

📸

Screenshots

PNG, JPEG, or WebP output. Control viewport size, full-page capture, and pre-capture delay.

📄

PDF Generation

A4, Letter, and more. Landscape mode, print CSS support, background printing — all handled.

Real Chromium

Playwright-powered headless Chrome. JS execution, lazy loading, cookie banners — rendered correctly.

🔑

API Key Auth

Simple header-based auth. Create keys instantly, revoke them any time from your dashboard.

📊

Usage Tracking

Every request logged. Monitor your usage against your monthly limit in real time.

🛡️

Rate Limiting

Fair-use limits per API key. Headers tell you exactly how many requests remain.

Simple, predictable endpoints

All endpoints use GET requests. Authenticate with your x-api-key header.

Screenshot
PDF
Health
Errors
GET /v1/screenshot

Capture a screenshot of any public URL. Returns the raw image binary by default.

ParameterTypeDefaultDescription
url requiredstringTarget URL including protocol (https://...)
format optionalstringpngpng | jpeg | webp
width optionalinteger1280Viewport width in px (100 – 3840)
height optionalinteger720Viewport height in px (100 – 2160)
fullPage optionalbooleanfalseCapture full scrollable page height
delay optionalinteger0Wait after page load (ms, max 10 000)
json optionalbooleanfalseReturn JSON with base64 image instead of binary

Example Request

curl "https://api.snapapi.dev/v1/screenshot?url=https://github.com&format=png&width=1440&height=900&fullPage=true" \
  -H "x-api-key: sk_your_key_here" \
  --output screenshot.png

Response Headers

HeaderDescription
Content-Typeimage/png, image/jpeg, or image/webp
X-Usage-CountRequests used this month (including this one)
X-Usage-LimitMonthly limit for your plan
GET /v1/pdf

Generate a PDF of any public URL. Returns raw PDF binary with Content-Disposition: attachment.

ParameterTypeDefaultDescription
url requiredstringTarget URL including protocol (https://...)
format optionalstringA4A4 | A3 | A5 | Letter | Legal | Tabloid
landscape optionalbooleanfalseUse landscape orientation

Example Request

curl "https://api.snapapi.dev/v1/pdf?url=https://example.com&format=A4&landscape=false" \
  -H "x-api-key: sk_your_key_here" \
  --output page.pdf
GET /health

No authentication required. Returns service health status.

// 200 OK — all systems operational
{
  "status": "ok",
  "checks": {
    "api": "ok",
    "database": "ok",
    "browser": "ok"
  },
  "version": "1.0.0",
  "uptime": 3742,
  "timestamp": "2024-01-15T12:00:00.000Z"
}

All errors return JSON with an error field and an optional hint.

StatusMeaningCommon Cause
400Bad RequestMissing or invalid query parameter
401UnauthorizedMissing or invalid x-api-key
422UnprocessableURL could not be loaded by the browser
429Rate LimitedHourly or monthly quota exceeded
500Server ErrorInternal failure — contact support
504Gateway TimeoutPage load exceeded 30 s
// 429 — monthly limit reached
{
  "error": "Monthly limit reached",
  "usage": 100,
  "limit": 100,
  "hint": "Upgrade your plan at https://snapapi.dev/pricing"
}

Simple, transparent pricing

Start free. Scale as you grow. No surprise fees.

Free
$0/mo
No credit card required
  • 100 screenshots/month
  • PNG, JPEG, WebP output
  • PDF generation
  • Full-page capture
  • 1 API key
  • Community support
Get started free
Business
$29/mo
25,000 screenshots/month
  • 25,000 screenshots/month
  • All Pro features
  • No hourly rate limit
  • Unlimited API keys
  • Usage analytics dashboard
  • Priority support
Start Business →
Enterprise
Custom
For large-scale workloads
  • Custom monthly volume
  • SLA guarantee
  • Dedicated infrastructure
  • Custom integrations
  • Invoicing available
  • Dedicated Slack support
Contact sales