Documentation
Everything you need to integrate snapshot.api into your project.
Authentication
All API requests require an API key. Pass it in the
x-api-key request header.Get your free API key →Example
fetch('https://api.snapshot.api/screenshot?url=https://google.com', {
headers: { 'x-api-key': 'your-api-key' }
})Take a screenshot
Capture a pixel-perfect screenshot of any public webpage.
GET/api/screenshot
Parameters
| Parameter | Type | Description |
|---|---|---|
| url required | string | The full URL of the page to screenshot |
| width optional | number | Viewport width in px. Default: 1280 |
| height optional | number | Viewport height in px. Default: 720 |
| fullPage optional | boolean | Capture full page. Default: false |
Code examples
const response = await fetch(
'https://api.snapshot.api/screenshot?url=https://google.com',
{ headers: { 'x-api-key': 'your-api-key' } }
);
const { image } = await response.json();
// image is a base64 PNG stringResponse
{
"success": true,
"url": "https://google.com",
"image": "data:image/png;base64,...",
"takenAt": "2026-03-18T10:00:00.000Z",
"usage": { "used": 1, "plan": "free" }
}Error codes
All errors return a JSON object with
success: false and an error message.400
Bad request — missing or invalid URL parameter
401
Unauthorized — missing or invalid API key
429
Too many requests — monthly limit reached or rate limit hit
500
Server error — failed to take screenshot
Ready to get started?
Get your free API key and take your first screenshot in minutes.
Get free API key →