Complete guide to CaptureAPI endpoints, authentication, and usage
Base URL: https://api.captureapi.net
Sign up for a free account and create an API key from your dashboard. Your API key is required for all API requests.
Get Your API Key →curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY"
The API returns a JSON response with the S3 URL of your screenshot. Screenshots are automatically stored and organized by user ID.
All API requests require authentication
Include your API key as a query parameter (api_key) in all requests.
https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY
Note: When rate limits are exceeded, you'll receive a 429 Too Many Requests response.
Monthly limits reset on the 1st of each month.
https://api.captureapi.net/screenshot
Generate a screenshot of any website. Returns a JSON response with the S3 URL and metadata.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| url | string | Required | - | Website URL to screenshot (http:// or https://) |
| api_key | string | Required | - | Your API key for authentication |
| width | integer | Optional | 1920 | Screenshot width in pixels (100-3840) |
| height | integer | Optional | 1080 | Screenshot height in pixels (100-2160) |
| full_page | boolean | Optional | false | Capture full page screenshot (true/false) |
| format | string | Optional | png | Image format: png, jpg, webp, or pdf (PDF available for paid plans only) |
| remove_popups | boolean | Optional | false | Remove popups, modals, and cookie banners from screenshot (true/false) |
{
"success": true,
"screenshot_url": "https://captureapi.s3.amazonaws.com/user_1/screenshots/uuid.png",
"screenshot_id": 123,
"format": "png",
"width": 1920,
"height": 1080,
"full_page": false,
"remove_popups": false,
"file_size": 245678,
"created_at": "2024-01-15T10:30:00Z",
"expires_at": "2024-01-22T10:30:00Z",
"response_time_ms": 2345
}
curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY&width=1920&height=1080&format=png&full_page=true"
https://api.captureapi.net/health
Health check endpoint to verify API status.
{"status": "healthy"}
https://api.captureapi.net/account/summary
Retrieve your account information including full name, email, usage summary, rate limits, plan information, and plan features.
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Required | Your API key for authentication |
The response includes:
{
"full_name": "John Doe",
"email": "user@example.com",
"usage_summary": {
"current_month": {
"successful": 45,
"failed": 2,
"total": 47,
"remaining": 55,
"usage_percentage": 45.0,
"month_start": "2024-01-01T00:00:00Z"
},
"all_time": {
"total_successful": 150
},
"average_response_time_ms": 2345.67,
"usage_by_key": [
{
"api_key__name": "My API Key",
"count": 45
}
]
},
"rate_limits": {
"requests_per_minute": 60,
"monthly_limit": 100
},
"plan_name": "free",
"plan_display_name": "Free Plan",
"plan_features": {
"formats": ["png"],
"custom_resolution": false,
"full_page": false
}
}
curl "https://api.captureapi.net/account/summary?api_key=YOUR_API_KEY"
curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY&width=1920&height=1080&format=png&full_page=true"
import requests
url = "https://api.captureapi.net/screenshot"
params = {
"url": "https://example.com",
"api_key": "YOUR_API_KEY",
"width": 1920,
"height": 1080,
"format": "png",
"full_page": True
}
response = requests.get(url, params=params)
data = response.json()
print(f"Screenshot URL: {data['screenshot_url']}")
print(f"File Size: {data['file_size']} bytes")
const axios = require('axios');
const url = 'https://api.captureapi.net/screenshot';
const params = {
url: 'https://example.com',
api_key: 'YOUR_API_KEY',
width: 1920,
height: 1080,
format: 'png',
full_page: true
};
axios.get(url, { params })
.then(response => {
console.log('Screenshot URL:', response.data.screenshot_url);
console.log('File Size:', response.data.file_size, 'bytes');
})
.catch(error => {
console.error('Error:', error.response?.data);
});
400
Invalid request parameters or malformed request.
401
Invalid or missing API key. Check your authentication credentials.
429
Rate limit exceeded. You've exceeded your monthly limit or requests per minute limit.
Get your free API key and start generating screenshots