Screenshot Scout
DevelopmentProfessional website screenshot API service for capturing high-quality images of web pages. Supports full-page screenshots, custom viewports, and various output formats.
π Documentation & Examples
Everything you need to integrate with Screenshot Scout
π Quick Start Examples
// Screenshot Scout API Example
const response = await fetch('https://screenshotscout.com/', {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);Screenshot Scout API
Screenshot Scout is a professional website screenshot API service designed for developers who need high-quality, reliable website screenshots at scale. Whether you're building a web monitoring tool, creating website previews, or generating social media images, Screenshot Scout provides the robust infrastructure you need.
Key Features
- Full-Page Screenshots - Capture entire web pages, not just the visible viewport
- Custom Viewports - Set specific screen resolutions and device dimensions
- Multiple Formats - Support for PNG, JPEG, and WebP image formats
- Mobile & Desktop - Simulate various devices including smartphones and tablets
- Fast & Reliable - Built for high-volume production use with 99.9% uptime
- Global Infrastructure - Distributed servers for low-latency screenshot generation
Getting Started
Sign up at Screenshot Scout to get your API key and start capturing screenshots programmatically.
JavaScript Example
const axios = require('axios');
const API_KEY = 'YOUR_SCREENSHOT_SCOUT_API_KEY';
const BASE_URL = 'https://api.screenshotscout.com';
// Basic screenshot capture
async function captureScreenshot(url, options = {}) {
const response = await axios.post(`${BASE_URL}/v1/screenshot`, {
url: url,
format: options.format || 'png',
width: options.width || 1920,
height: options.height || 1080,
fullPage: options.fullPage || true,
quality: options.quality || 90
}, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
},
responseType: 'arraybuffer'
});
return response.data;
}
// Capture with mobile viewport
async function captureMobileScreenshot(url) {
return await captureScreenshot(url, {
width: 375,
height: 667,
format: 'png'
});
}
// Save screenshot to file
const fs = require('fs');
async function saveScreenshot(url, filename) {
const imageBuffer = await captureScreenshot(url);
fs.writeFileSync(filename, imageBuffer);
console.log(`Screenshot saved as ${filename}`);
}
// Usage examples
saveScreenshot('https://example.com', 'example-screenshot.png');
captureMobileScreenshot('https://mobile-site.com');
Python Example
import requests
import base64
API_KEY = 'YOUR_SCREENSHOT_SCOUT_API_KEY'
BASE_URL = 'https://api.screenshotscout.com'
def capture_screenshot(url, **options):
headers = {
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
}
payload = {
'url': url,
'format': options.get('format', 'png'),
'width': options.get('width', 1920),
'height': options.get('height', 1080),
'fullPage': options.get('full_page', True),
'quality': options.get('quality', 90)
}
response = requests.post(
f'{BASE_URL}/v1/screenshot',
json=payload,
headers=headers
)
if response.status_code == 200:
return response.content
else:
raise Exception(f'Screenshot failed: {response.text}')
# Save screenshot to file
def save_screenshot(url, filename, **options):
image_data = capture_screenshot(url, **options)
with open(filename, 'wb') as f:
f.write(image_data)
print(f'Screenshot saved as {filename}')
# Usage
save_screenshot('https://github.com', 'github-screenshot.png')
save_screenshot('https://python.org', 'python-mobile.png', width=375, height=667)
cURL Example
# Basic screenshot
curl -X POST https://api.screenshotscout.com/v1/screenshot \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"format": "png",
"width": 1920,
"height": 1080,
"fullPage": true
}' \
--output screenshot.png
# Mobile screenshot
curl -X POST https://api.screenshotscout.com/v1/screenshot \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://mobile-site.com",
"format": "png",
"width": 375,
"height": 667,
"fullPage": true
}' \
--output mobile-screenshot.png
API Parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
url |
string | Target website URL (required) | - |
format |
string | Image format (png, jpeg, webp) | png |
width |
integer | Viewport width in pixels | 1920 |
height |
integer | Viewport height in pixels | 1080 |
fullPage |
boolean | Capture full page or viewport only | true |
quality |
integer | Image quality (1-100, for jpeg/webp) | 90 |
delay |
integer | Delay before capture in milliseconds | 1000 |
Response
The API returns the screenshot as binary image data. For JSON responses, the image is base64 encoded.
Use Cases
- Website Monitoring - Automated visual regression testing
- Social Media - Generate preview images for link sharing
- Documentation - Create screenshots for tutorials and guides
- Portfolio Sites - Display website thumbnails
- Archiving - Create visual records of web pages
- Quality Assurance - Cross-browser visual testing
- Marketing - Generate website previews for presentations
Pricing
Screenshot Scout offers flexible pricing:
- Free Tier: 100 screenshots/month
- Starter: $19/month for 5,000 screenshots
- Professional: $49/month for 25,000 screenshots
- Enterprise: Custom pricing for high-volume usage
π 30-Day Uptime History
Daily uptime tracking showing online vs offline minutes







