Screenshot PNG
POST
/v1/screenshot
curl -X POST "https://screenshot.toolkitapi.io/v1/screenshot" \
-H "X-API-Key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "full_page": true, "width": 1280}'
# See curl example
// See curl example
# See curl example
Response
200 OK
{
"image": "iVBORw0KGgoAAAANSUhEUgAA...",
"format": "png",
"width": 1280,
"height": 720,
"url": "https://example.com"
}
How to Use
1
Send a POST request to /v1/screenshot with a JSON body containing the target url.
2
Optionally set width, height, full_page, delay, dark_mode, and device_scale_factor to customise the capture.
3
The response returns a base64-encoded PNG image along with the captured dimensions.
About This Tool
Render a webpage in a headless Chromium browser and return a base64-encoded PNG screenshot. Supports full-page capture (entire scrollable area) or viewport-only mode.
Configure viewport width and height, device pixel ratio for retina/HiDPI capture, dark mode emulation, and a post-load delay to let JavaScript-rendered content finish rendering.
Why Use This Tool
- Link Previews — Generate thumbnail previews for URLs shared in your app — social cards, bookmarks, or link embeds.
- Visual Monitoring — Capture periodic screenshots of key pages to detect layout regressions or unexpected content changes.
- Archival — Take versioned snapshots of web pages for compliance, legal records, or historical reference.
Frequently Asked Questions
Does this execute JavaScript?
Yes — the page is rendered in a real Chromium browser, so all JavaScript, CSS, and web fonts are fully executed.
How large can the screenshot be?
Viewport width up to 3840px and height up to 2160px. Full-page mode captures the entire scrollable height regardless of viewport.
How do I capture a page that needs time to load?
Use the delay parameter (0-30 seconds) to wait after the page's networkidle event before capturing.
Start using Screenshot PNG now
Get your free API key and make your first request in under a minute.