Now in public beta · Free tier available

Turn any URL into a screenshot.
One API call.

Render any webpage as a high-quality screenshot in WebP, PNG, or JPEG. Full-page or viewport — shotAPI handles rendering, caching, and delivery so you don't have to.

Start Free Read the Docs
$ curl -X POST https://api.shotapi.dev/v1/capture \
  -H "Authorization: Bearer sk_demo_..." \
  -d '{"url":"https://example.com"}'
1B+
Screenshots rendered
99.9%
Uptime SLA
<200ms
Avg response time

Everything you need to capture the web

A modern, developer-friendly API for rendering web pages into images. Built for scale from day one.

Full Page

Capture entire web pages from top to bottom, not just the viewport. Perfect for archiving, previews, and social cards.

Scroll capture

Any Format

Choose between WebP (smallest files), PNG (lossless), or JPEG (compatible everywhere). Set quality on a per-request basis.

WebP · PNG · JPEG

Fast Rendering

Headless Chromium instances with a warm-pool architecture. Most requests complete in under 200 milliseconds.

<200ms avg

Simple REST API

A single POST endpoint with intuitive JSON parameters. No SDK required — works with any language that speaks HTTP.

RESTful

Generous Free Tier

1,000 screenshots per month completely free. No time limit, no hidden charges. Upgrade only when you need more.

1K / month free

Cache Built-in

Automatic in-memory and disk caching with configurable TTL. Repeated captures of the same URL are instant.

Configurable TTL

Simple, transparent pricing

Start for free. Scale as you grow. No surprise bills — you only pay for what you use.

Free
$ 0
Perfect for side projects and evaluation
  • 1,000 screenshots / month
  • WebP, PNG & JPEG output
  • Viewport capture
  • 7-day cache retention
  • Community support
Hobby
$ 9 /mo
For indie devs and small projects
  • 5,000 screenshots / month
  • WebP, PNG & JPEG output
  • Full-page & viewport capture
  • 14-day cache retention
  • Email support
Business
$ 99 /mo
For high-volume production use
  • 100,000 screenshots / month
  • WebP, PNG & JPEG output
  • Full-page & viewport capture
  • 90-day cache retention
  • Custom viewport dimensions
  • Custom CSS injection
  • Dedicated support & SLA

One endpoint, infinite possibilities

A simple REST API that works with any programming language. Here's how to get started.

POST https://api.shotapi.dev/v1/capture
cURL
# Capture a webpage as a PNG screenshot
curl -X POST https://api.shotapi.dev/v1/capture \
  -H "Authorization: Bearer sk_demo_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "format": "png",
    "full_page": true
  }'
POST https://api.shotapi.dev/v1/capture
cURL
# Capture with custom viewport and WebP output
curl -X POST https://api.shotapi.dev/v1/capture \
  -H "Authorization: Bearer sk_demo_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://news.ycombinator.com",
    "format": "webp",
    "width": 1280,
    "height": 800,
    "quality": 85
  }'
JSON Response
200 OK
{
  "success": true,
  "data": {
    "url": "https://cdn.shotapi.dev/c/abc123.png",
    "format": "png",
    "size_bytes": 247890,
    "width": 1920,
    "height": 1080,
    "cached": false,
    "render_ms": 187
  }
}

Ready to ship screenshots?

Get started in under 30 seconds. No credit card required for the free tier.