Integrate our screenshot service into your applications
Sign up for free to get your API key (optional for basic use)
Send a POST request with the URL and parameters
Receive base64 encoded image in JSON response
https://scrollingscreenshot.com/apiTest our API directly in your browser. No signup required!
Test results will appear here
Capture a screenshot with parameters in the request body (recommended for complex requests)
application/jsonCapture a screenshot with parameters as query strings (simple requests only)
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url | string | Required | - | The URL of the webpage to capture |
width | number | Optional | 1920 | Width of the screenshot in pixels (240-8000) |
height | number | Optional | 1080 | Height of the screenshot in pixels (240-8000) |
fullPage | boolean | Optional | false | Capture the entire page (scrolling screenshot) |
darkMode | boolean | Optional | false | Capture in dark mode |
format | string | Optional | png | Image format (png, jpeg, webp) |
delay | number | Optional | 1 | Delay before capturing in seconds (1-15) |
scale | number | Optional | 1.0 | Scale factor (0.1-1.0) |
// Using fetch API
const response = await fetch('https://scrollingscreenshot.com/api/screenshot', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
url: 'https://example.com',
width: 1920,
height: 1080,
fullPage: true,
format: 'png'
})
});
const data = await response.json();
if (data.success) {
// Create image element
const img = document.createElement('img');
img.src = data.base64;
document.body.appendChild(img);
} {
"success": true,
"base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"filename": "example.com_1920x1080.png",
"url": "blob:https://scrollingscreenshot.com/..."
}{
"success": false,
"error": "URL is required",
"details": "The url parameter is missing or invalid"
}Full page screenshots take longer. Use only when necessary for better performance.
Use WEBP for smaller file sizes, PNG for quality, JPEG for photos.
Always check the 'success' field and handle errors appropriately.
Use delays for dynamic content but keep them as short as possible.
Our documentation covers most use cases, but we're here if you need assistance.