API Documentation

Complete guide to our screenshot API endpoints, authentication, and usage. Learn how to integrate our powerful website screenshot API into your applications.

Base URL: https://api.captureapi.net

Getting Started

1. Get Your API Key

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 →

2. Make Your First Request

curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY"

3. Receive Your Screenshot

The API returns a JSON response with the S3 URL of your screenshot. Screenshots are automatically stored and organized by user ID.

Authentication

All API requests require authentication

Include your API key as a query parameter (api_key) in all requests.

Query Parameter (Screenshot API)

https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY

Rate Limits

Free

$0/month
Monthly Limit 100
Requests/minute 60
Formats PNG only
Retention 7 days
Timeout 45s
API Keys 1
POPULAR

Basic

$10/month
Monthly Limit 1,000
Requests/minute 300
Formats PNG, JPG, WebP, PDF
Retention 30 days
Timeout 60s
API Keys 5

Pro

$30/month
Monthly Limit 10,000
Requests/minute 1200
Formats PNG, JPG, WebP, PDF
Retention 90 days
Timeout 90s
API Keys Unlimited

Note: When rate limits are exceeded, you'll receive a 429 Too Many Requests response. Monthly limits reset on the 1st of each month.

Screenshot API

GET https://api.captureapi.net/screenshot

Generate a screenshot of any website. Returns a JSON response with the S3 URL and metadata.

Query Parameters

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)

Response

{
  "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
}

Example Request

curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY&width=1920&height=1080&format=png&full_page=true"
GET https://api.captureapi.net/health

Health check endpoint to verify API status.

{"status": "healthy"}

Account Summary

GET https://api.captureapi.net/account/summary

Retrieve your account information including full name, email, usage summary, rate limits, plan information, and plan features.

Query Parameters

Parameter Type Required Description
api_key string Required Your API key for authentication

Response

The response includes:

  • full_name: Your full name
  • email: Your email address
  • usage_summary: Current month usage, remaining quota, usage percentage, average response time, and usage by API key
  • rate_limits: Requests per minute and monthly limits
  • plan_name: Name of your current subscription plan
  • plan_display_name: Display name of your subscription plan
  • plan_features: Available features for your plan (formats, custom_resolution, full_page, etc.)
{
  "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
  }
}

Example Request

curl "https://api.captureapi.net/account/summary?api_key=YOUR_API_KEY"

Code Examples

cURL

curl "https://api.captureapi.net/screenshot?url=https://example.com&api_key=YOUR_API_KEY&width=1920&height=1080&format=png&full_page=true"

Python

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")

JavaScript (Node.js)

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);
  });

Error Codes

400

Bad Request

Invalid request parameters or malformed request.

401

Unauthorized

Invalid or missing API key. Check your authentication credentials.

429

Too Many Requests

Rate limit exceeded. You've exceeded your monthly limit or requests per minute limit.

Screenshot API Documentation

Our screenshot API service provides a simple RESTful interface for generating website screenshots. The website screenshot API accepts HTTP GET requests with query parameters and returns JSON responses containing screenshot URLs and metadata.

The service is designed to be language-agnostic, working seamlessly with Python, JavaScript, PHP, Ruby, Go, and any other language that can make HTTP requests. Our comprehensive documentation includes code examples in multiple languages to help you with screenshot API integration quickly.

Getting Started

To use our screenshot API for developers, you'll need an API key. Sign up for a free account to get your API key, then start making requests to our endpoints. The service supports various parameters including URL, dimensions, format, and optional features like full-page capture and popup removal.

All requests to our screenshot web API require authentication via your API key. Rate limits are enforced based on your subscription plan, ensuring fair usage across all users. Screenshots are stored securely on Amazon S3 and returned as direct URLs for easy integration.

Ready to Start Building?

Get your free API key and start using our powerful webpage screenshot API today