Turn any URL or HTML into a pixel-perfect screenshot
One API call. Get back PNG, JPEG, or PDF. No browser infrastructure to manage. No memory leaks to debug. Just screenshots that work.
curl -X POST https://api.landingwork.dev/v1/screenshot \
-H "Authorization: Bearer sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"url": "https://github.com",
"format": "png",
"width": 1280,
"height": 720,
"fullPage": false
}' \
--output screenshot.pngEverything you need. Nothing you don't.
Built for developers who want screenshots without the headache of managing Puppeteer clusters.
URL or HTML Input
Pass any public URL or raw HTML string. We render it in a real Chromium browser and capture the result.
Custom Viewports
Set exact width, height, and device scale factor. Simulate mobile, tablet, or desktop screens.
PNG, JPEG, or PDF
Choose your output format. Control JPEG quality. Get full-page scrolling captures or viewport-only.
Dark Mode
Render pages in dark color scheme. Perfect for generating OG images that match your brand.
Smart Waiting
Wait for specific selectors or add custom delays. Capture dynamic content after JavaScript finishes rendering.
Fast & Reliable
Managed browser pool with concurrency limits. No cold starts, no memory leaks, no timeouts.
Built for real use cases
OG Image Generation
Generate dynamic social sharing cards for every blog post, product page, or user profile. Pass your HTML template, get back a perfect 1200x630 PNG.
Invoice & Report PDFs
Design invoices and reports with HTML/CSS, then convert them to pixel-perfect PDFs. No LaTeX, no wkhtmltopdf headaches.
Website Monitoring
Capture periodic screenshots of competitor sites or your own pages. Track visual changes over time for QA and compliance.
Visual Regression Testing
Integrate into your CI/CD pipeline. Capture screenshots before and after deployments to catch unintended UI changes.
Free during beta
We're in early access. Get full access for free while we refine the product. No credit card required. Ever.
Free Beta
- โ200 screenshots/month
- โAll formats (PNG, JPEG, PDF)
- โCustom viewports & dark mode
- โFull-page capture
- โSmart wait strategies
- โNo credit card required
Dead-simple API
One endpoint. JSON in, image out. Here's everything you need to know.
Endpoint
POST /api/v1/screenshotHeaders
| Authorization | Bearer sk_your_key |
| Content-Type | application/json |
Parameters
| Param | Type | Default | Description |
|---|---|---|---|
url | string | โ | URL to capture |
html | string | โ | Raw HTML to render |
format | string | png | png, jpeg, or pdf |
width | number | 1280 | Viewport width (100โ3840) |
height | number | 720 | Viewport height (100โ2160) |
fullPage | boolean | false | Capture full scrollable page |
quality | number | 80 | JPEG quality (0โ100) |
deviceScaleFactor | number | 1 | Device pixel ratio (1โ3) |
waitAfterLoad | number | 0 | Ms to wait after load (max 10000) |
waitForSelector | string | โ | CSS selector to wait for |
darkMode | boolean | false | Enable dark color scheme |
Response
Returns the image binary directly with the appropriate Content-Type header. Rate limit info is included in response headers.
X-RateLimit-Limit ยท X-RateLimit-Remaining