Batch Screenshots

Capture 50 URLs
in One API Call

Submit a batch of URLs, get presigned download links for each screenshot. Parallel processing, automatic retries, and webhook notifications when the job completes.

Parallel Processing

All URLs render simultaneously for maximum speed. A 50-URL batch finishes in roughly the same time as a single screenshot.

Presigned Download URLs

Each screenshot gets a secure, time-limited download link. No need to store images in your own infrastructure.

Automatic Credit Rollback

Failed URLs do not count against your quota. Credits are automatically returned for any screenshot that could not be captured.

Webhook Notifications

Get notified the moment your batch job finishes. No polling required. Learn more about webhooks.

How It Works

1

Submit a Batch Request

POST /v1/screenshot/batch
curl -X POST "https://app.snap-render.com/v1/screenshot/batch" \
  -H "X-API-Key: sk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"urls": ["https://github.com", "https://stripe.com", "https://example.com"], "format": "png"}'
2

Get a Job ID

Response
{
  "jobId": "batch_abc123",
  "status": "processing",
  "total": 3
}
3

Poll or Use Webhooks for Results

GET /v1/screenshot/batch/:jobId
{
  "jobId": "batch_abc123",
  "status": "completed",
  "items": [
    { "url": "https://github.com", "status": "completed", "downloadUrl": "https://..." },
    { "url": "https://stripe.com", "status": "completed", "downloadUrl": "https://..." },
    { "url": "https://example.com", "status": "completed", "downloadUrl": "https://..." }
  ]
}

Related Features

Frequently Asked Questions

What is the maximum batch size?
50 URLs per request. Each URL in the batch counts as one screenshot against your monthly quota.
How are failed URLs handled?
Failed screenshots are retried automatically. If they still fail after retries, credits are rolled back so you are not charged for failed captures.
How long do download URLs last?
Presigned download URLs expire after 1 hour. Download your screenshots promptly after the batch completes.
Can I use all screenshot parameters in batch?
Yes. Parameters like format, width, height, device, dark_mode, block_ads, and quality apply to all URLs in the batch.
How do I know when a batch is done?
Poll the batch status endpoint with your job ID, or register a webhook to get notified automatically.

Ready to Capture at Scale?

Sign up in 30 seconds. 500 free screenshots per month. No credit card required.

Create free account