Documentation

CaptureAPI Documentation

Generate website screenshots using a fast and developer-friendly API.

Overview

CaptureAPI allows developers to generate screenshots of any website using a simple HTTP API request. The API renders the page in a secure browser environment and returns a screenshot URL along with metadata.

Base endpoint

https://api.captureapi.net/screenshot

Supported formats

  • PNG
  • JPG
  • WebP
  • PDF

Quickstart

Send a GET request with your target URL and API key. Here is the shortest path to a working screenshot.

Example request

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

Example response

JSON
{
  "success": true,
  "screenshot_url": "https://captureapi.s3.amazonaws.com/uuid/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
}

Screenshot API

Generate a screenshot of any public URL. For account and usage information, see Account summary.

GET/screenshot

Generate a screenshot of any website.

Endpoint

https://api.captureapi.net/screenshot

Query parameters

ParameterTypeRequiredDefaultDescription
urlstringYesWebsite URL to screenshot
api_keystringYesYour API key
widthintegerNo1920Screenshot width
heightintegerNo1080Screenshot height
full_pagebooleanNofalseCapture full page
formatstringNopngpng, jpg, webp, pdf
remove_popupsbooleanNofalseRemove cookie banners and popups

Example response

Successful responses include the screenshot URL, id, format, dimensions, flags, file size, timestamps, and response_time_ms.

JSON
{
  "success": true,
  "screenshot_url": "https://captureapi.s3.amazonaws.com/uuid/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
}

Health check

Health check endpoint to verify API status. No authentication required.

GET/health

Endpoint

https://api.captureapi.net/health

Example response

JSON
{
  "status": "healthy"
}

Example request

cURL
curl "https://api.captureapi.net/health"

Account summary

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

GET/account/summary

Endpoint

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

Query parameters

ParameterTypeRequiredDescription
api_keystringYesYour 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.)

Example response

JSON
{
  "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
curl "https://api.captureapi.net/account/summary?api_key=YOUR_API_KEY"

Error responses

Errors return JSON with success: false and an error message.

Example
{
  "success": false,
  "error": "Invalid API key"
}

Common errors

ErrorDescription
Invalid API keyAPI key is incorrect
Missing URLURL parameter required
Rate limit exceededToo many requests

Rate limits

Rate limits depend on your plan. Limits are applied per API key and reset each minute.

PlanRequests / minute
Free5
Pro40
Elite100

Examples

Use any HTTP client. Replace YOUR_API_KEY with a key from your dashboard.

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

const response = await fetch(url);
const data = await response.json();

console.log(data.screenshot_url);

Screenshot options

Combine query parameters to control capture behavior.

https://api.captureapi.net/screenshot?url=https://example.com&full_page=true