Fast, reliable screenshot API with device emulation, dark mode, and multiple formats. Perfect for automation, testing, and content generation.
curl -X POST https://screenshot.endpnt.dev/api/v1/capture \
-H "x-api-key: your_api_key" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"format": "png",
"width": 1280,
"height": 720,
"full_page": true
}'Built with modern web standards and optimized for speed, reliability, and ease of use.
Capture entire scrollable pages, not just the visible viewport
Desktop, mobile, and tablet presets with accurate user agents
Automatically trigger dark mode for supported websites
Screenshot specific page elements using CSS selectors
PNG, JPEG, and PDF output with quality control
Optimized browser engine with sub-2 second response times
Paste any URL below and see the API in action
Works with any programming language that can make HTTP requests
const response = await fetch('https://screenshot.endpnt.dev/api/v1/capture', {
method: 'POST',
headers: {
'x-api-key': 'your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: 'https://example.com',
format: 'png',
width: 1280,
height: 720,
full_page: true
})
});
const result = await response.json();
if (result.success) {
const imageData = result.data.image; // base64 encoded
}import requests
import base64
url = "https://screenshot.endpnt.dev/api/v1/capture"
headers = {
"x-api-key": "your_api_key",
"Content-Type": "application/json"
}
data = {
"url": "https://example.com",
"format": "png",
"width": 1280,
"height": 720,
"full_page": True
}
response = requests.post(url, headers=headers, json=data)
result = response.json()
if result["success"]:
image_data = base64.b64decode(result["data"]["image"])
with open("screenshot.png", "wb") as f:
f.write(image_data)Join thousands of developers using our Screenshot API for automation, testing, and content generation.
Get your free API key