API Documentation
Authentication
All API requests must include your API key in the Authorization header using the Bearer token scheme.
Screenshot API
Endpoint: POST /v1/screenshot
Capture pixel-perfect screenshots of any public website.
Parameters (JSON Body)
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | (Required) | The full URL of the website to capture. |
fullPage | boolean | false | Whether to capture the entire scrolling page. |
width | number | 1280 | Viewport width in pixels. |
height | number | 800 | Viewport height in pixels. |
waitFor | number | 0 | Wait X milliseconds before capture. |
blockAds | boolean | false | Attempt to block known ad and tracker domains. |
headers | object | null | (Business Tier) Dictionary of custom HTTP headers to send with the request. |
cookies | array | null | (Business Tier) Array of cookie objects (e.g. [{"name": "session", "value": "123"}]). |
Example Request
Example Response
PDF API
Endpoint: POST /v1/pdf
Convert websites to PDF documents.
Parameters (JSON Body)
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | (Required) | The full URL of the website to capture. |
format | string | "A4" | Paper format (e.g., A4, Letter). |
printBackground | boolean | true | Include background graphics. |
margin | string | "0" | Margins in CSS units (e.g., "1cm", "0.5in"). |
Example Request
OG Image API
Endpoint: POST /v1/og
Generate dynamic Open Graph images from templates.
Parameters (JSON Body)
| Parameter | Type | Default | Description |
|---|---|---|---|
template | string | (Required) | Name of the template (e.g., "article", "product"). |
data | object | (Required) | Key-value pairs corresponding to template fields. |
Example Request
Custom Templates
If you'd like to use your own HTML, you can pass "template": "custom" and provide a customHtml field inside data. We use Handlebars for templating, so you can inject variables using {{varName}}.
Batch API (Pro & Business)
Endpoint: POST /v1/batch
Process multiple screenshots or PDFs in a single API call concurrently. Ideal for bulk scraping or processing.
Parameters (JSON Body)
| Parameter | Type | Default | Description |
|---|---|---|---|
requests | array | (Required) | An array of up to 25 capture objects. Each object must have a type ("screenshot" or "pdf") and any standard parameters for that type. |
Example Request
Example Response
AI Mode (Pro & Business)
For the Screenshot API, include "mode": "ai" in your JSON body to return a JSON response containing both a hosted screenshot URL and extracted page metadata optimized for LLMs.
AI Mode forces JPEG capture at 60% quality (token-efficient) and extracts bounding boxes for interactable elements (buttons, inputs, links) to help vision models map the UI.
Example Request
Example Response
No-Code Integrations
Snapsly is built to integrate seamlessly with no-code automation tools like Zapier, Make.com, and Retool.
To get started instantly, you can import our OpenAPI Specification directly into your platform of choice to automatically generate the API actions.
Make.com
Use the "Make an API Call" HTTP module or the "Make a Custom App" builder, upload the openapi.yaml, and input your API key.
Zapier
Use the "Webhooks by Zapier" action and select "Custom Request", or build a private integration via the Zapier Developer Platform using the OpenAPI spec.
Rate Limits
Rate limits are based on your current billing plan. When you exceed your monthly allowance, the API will return a 429 Too Many Requests error.
- Free: 200 captures / month
- Starter: 3,000 captures / month
- Pro: 10,000 captures / month
- Business: 30,000 captures / month
Error Handling
The API uses standard HTTP status codes to indicate success or failure.
| Code | Meaning | Description |
|---|---|---|
200 | OK | The request was successful. |
400 | Bad Request | Missing required parameters or invalid formatting. |
401 | Unauthorized | Missing, invalid, or revoked API key. |
429 | Too Many Requests | Monthly quota exceeded. |
500 | Internal Error | Something went wrong on our end during capture. |