Page-load screencast
Record a real Chrome browser loading any URL from start to finish. JavaScript, animations, lazy-loaded images, and dynamic content are all captured exactly as a visitor would see them.
Product
Record a screencast of any web page loading and deliver it as a WebM, MP4, or GIF — all from a single API call. Control quality, speed, and duration. Works with automation steps, geo routing, and cloud storage integrations.
API request
POST /screenshots
Authorization: X-API-KEY <key>
{
"url": "https://example.com",
"video": true,
"video_format": "mp4",
"video_duration": 10,
"video_quality": 20,
"video_speed": 1,
"country": "us"
}Returns a signed video URL · Deliver directly to S3, Drive, or Dropbox
How it works
The ScreenshotCenter API is queue-based and async. POST your URL with
video=true,
receive a job ID in return, and poll or use a webhook to collect the finished video file.
Recording runs inside a real Chromium browser. Every job benefits from automatic retries, stall detection, and timeout protection — no browser infra to manage.
Submit the job
POST /v1/screenshot with your URL and video parameters. Receive a job ID immediately.
Browser records the page
A real Chromium instance loads the page, executes JavaScript, runs any automation steps, and captures the screen.
Retrieve the video
Poll /v1/screenshot/:id or receive a webhook. Download the video from the signed storage URL, or have it delivered to your cloud storage automatically.
Output formats
Efficient open format. Smallest file size for web embeds, Slack posts, and inline previews.
Maximum compatibility. Works in every browser, media player, and video platform out of the box.
Lightweight, universally supported. Ideal for documentation, README files, and email embeds.
Example output
Each video is recorded by a real Chrome browser. Sample videos will be added here soon.
Page-load screencast
Default settings — WebM, 15 s, quality 30, speed 1×
video=true & video_format=webm
Interactive sequence
Automation steps: login to a website · quality 15 · speed 0.5×
video=true & steps=[…] & video_speed=0.5Capabilities
One consistent parameter set controls the full recording pipeline — from browser launch to file delivery. No ffmpeg configuration, no browser fleet to manage.
Record a real Chrome browser loading any URL from start to finish. JavaScript, animations, lazy-loaded images, and dynamic content are all captured exactly as a visitor would see them.
Choose the format that fits your pipeline. WebM for web embeds, MP4 for broad compatibility, or GIF for lightweight previews and inline documentation.
Dial in CRF-style quality (0–63, lower is sharper) and playback speed (0.1× to 5×). Slow down complex interactions for review or speed up long page loads for concise demos.
Set recording duration up to 30 seconds. Pass 0 to let the recording run until the page is fully loaded, or fix a precise duration for consistent output size.
Click, scroll, type, wait, and navigate before or during the recording. Capture interactive sequences — form submissions, menu expansions, carousel transitions — not just static loads.
Route the capture job to a browser in a specific country. Geo-gated pages, localised content, and region-specific UI states are recorded faithfully from the target location.
Inject session cookies or run login automation steps before recording starts. Capture dashboards, SaaS portals, and paywalled content that require a valid session.
Push each video directly to Amazon S3, Google Drive, Dropbox, OneDrive, or FTP. No intermediate download step — the file lands in your storage as soon as rendering completes.
API Example
SDKs are available for JavaScript, Python, PHP, Go, Ruby, Java, and C#. Every SDK handles job submission, polling, and video retrieval.
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",
"video": true,
"video_format": "mp4",
"video_duration": 10,
"video_quality": 20,
"country": "us"
}'API parameters
These parameters extend the standard screenshot request. All other parameters —
url,
country,
steps,
cookies, etc. — work as normal.
| Parameter | Type | Default | Description |
|---|---|---|---|
| video | boolean | false | Set to true to request a screencast video alongside the screenshot. |
| video_format | string | webm | Output container format: webm, mp4, or gif. |
| video_quality | integer | 30 | CRF-style quality from 0 (best, largest) to 63 (lowest, smallest). Lower values produce sharper video. |
| video_speed | number | 1 | Playback speed multiplier from 0.1× to 5×. Values above 1 fast-forward the recording. |
| video_duration | integer | 15 | Recording duration in seconds (0–30). Pass 0 to record until the page is fully loaded. |
Full parameter reference in the API docs.
Use cases
From automated release demos to compliance evidence — the Video API fits any workflow that needs a reliable, browser-accurate recording of a web page.
Record a polished screencast of a new feature loading — automatically, on every deploy. Embed the video in release notes, Slack channels, or marketing pages without manual screen recording.
Capture before-and-after videos of a page across code changes. Side-by-side video comparison makes it easy to spot animation regressions, flicker, and layout shifts that static diffs miss.
Record a short screencast whenever a monitoring check fails. Attach the video to the alert for instant visual context — no need to manually reproduce the failing state.
Capture how pages load and animate across multiple countries. Compare loading sequences, skeleton screens, and interactive states without running browser infra yourself.
Record live page states as video evidence for regulatory or legal purposes. The timestamped video proves exactly what a visitor would have experienced at a specific point in time.
Generate short, up-to-date GIF or video walkthroughs for documentation by recording the real product UI on demand — always reflecting the current version of the page.
Integrations
Every video job can automatically deliver output to cloud storage, post to Slack, trigger Zapier zaps, or call your webhook — no manual file handling required.
Pricing
Free plan includes 500 captures per month with full feature access including video output. Paid plans unlock higher volume, priority queues, and SLA-backed support.
500 screenshots/month
Free / month
2,000 screenshots/month
$15 / month
Most Popular
5,000 screenshots/month
$35 / month
FAQ
Add video=true to any screenshot request. The response will include a video artifact URL alongside the standard screenshot fields.
webm (default), mp4, and gif. Set the format with the video_format parameter.
Up to 30 seconds. Set video_duration to the desired length in seconds. Pass 0 to let the recording run until the page is fully loaded with no fixed minimum.
The video_quality parameter uses a CRF-style scale from 0 (highest quality, largest file) to 63 (lowest quality, smallest file). The default is 30.
video_speed accepts a multiplier from 0.1× to 5×. Use values above 1 to compress long page loads into a short clip, or below 1 to slow down fast interactions.
Yes. Inject session cookies via the cookies parameter, or define automation steps (click, type, navigate) to run a full login flow before recording begins.
Yes. Use automation steps — click, scroll, type, wait — to drive the browser through any interaction sequence. The recording captures everything from the first step to the last.
The API returns a signed URL where the video file is hosted. You can also configure an app integration (S3, Google Drive, Dropbox, etc.) to receive the file directly without polling.
Create a free account and record your first page in minutes. 500 captures per month, no credit card required, full API access from day one.
PNG, JPEG, WebP, PDF, HTML, and video from one REST endpoint.
Render any page to a print-ready PDF with paper format and margin control.
See which countries and regions are available for geo routing.
Send video outputs directly to S3, Google Drive, Dropbox, and more.