← Back to blog
Guides·6 min read

How to capture website screenshots with an API

A practical guide to capturing pixel perfect website screenshots programmatically, from a single API call to full page captures, device emulation and scheduled jobs.

Running your own headless browser fleet for screenshots means managing Chrome versions, memory leaks, timeouts, lazy loading, cookie banners and retina displays. A screenshot API turns all of that into one HTTP request.

Your first screenshot

Grab your API key from the ScreenshotBee dashboard and make a single request:

curl -X POST "https://screenshotbee.com/api/capture-screenshot" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{ "url": "https://example.com", "type": "png", "full_page": true }'

Beyond the basics

Once the simple case works, the same API covers the harder ones:

  • Full page captures that trigger lazy loaded content
  • Device emulation for iPhones, iPads, Android phones and custom viewports
  • Element specific screenshots using a CSS selector
  • Wait conditions so single page apps finish rendering first
  • Raw HTML input when the page you need is not public
  • Video recording of the capture session for debugging

Automate it

Use scheduled captures to monitor pages daily or weekly without writing a cron job, or connect ScreenshotBee to 5,000+ apps through the Zapier integration.

Ready to try ScreenshotBee?

Start with free credits. No credit card, no subscription.

Get started free