Browshot API

Development / API Key Intermediate HTTPS CORS
Varies by plan (check documentation)

Overview

Browshot is a screenshot API that captures web pages rendered in real browsers (Chrome, Firefox) at any screen resolution or as any device type, including mobile and tablet. An API key is required and can be obtained after free registration. It is well-suited for generating website thumbnails, content moderation screenshots, or visual regression testing.

💡

Beginner Tip

Register at browshot.com to get a free API key with monthly credits. Start with the /api/v1/screenshot/simple endpoint for a synchronous screenshot, which is simpler than the async two-step flow.

Available Data

Browshot data via REST API
JSON-formatted response data
Requires API key authentication

Example Response

JSON Response
{
  "id": "Dwu85P9SOIk",
  "urls": {
    "full": "https://images.unsplash.com/photo-...",
    "regular": "https://images.unsplash.com/photo-...?w=1080",
    "thumb": "https://images.unsplash.com/photo-...?w=200"
  },
  "width": 4000,
  "height": 3000,
  "user": {
    "name": "John Doe",
    "username": "johndoe"
  }
}

Field Reference

id Unique screenshot job ID used to retrieve the result later.
status Current state of the screenshot: in_queue, processing, or finished.
screenshot_url URL of the captured screenshot image once the job is finished.
url The target URL that was screenshotted.
width Width of the screenshot in pixels.
height Height of the screenshot in pixels.

Implementation Example

// ⚠️ Note: This URL may be a documentation page. Check official docs for actual API endpoint.
const url = "https://browshot.com/api/documentation";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "X-API-Key": "YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

Error: invalid key API key is missing from the request or typed incorrectly.
Pass your API key as the key query parameter in every request, e.g., ?key=YOUR_API_KEY.
Error: not enough credits Your account has run out of screenshot credits for the current period.
Wait for monthly credit reset, purchase additional credits, or use the free tier instance type which costs fewer credits.
Screenshot shows blank/white page The target page requires JavaScript rendering that did not complete in time.
Add the delay parameter (e.g., &delay=2000) to wait for JavaScript to finish loading before the screenshot is taken.

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 5/20
🔒 Security 15/15
🛠 Developer XP 17/20
✓ Reliability 10/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth API Key
HTTPS REQUIRED
CORS YES
Category Development
Difficulty Intermediate
Verified: 2026-04-04

Alternatives to Browshot

Technical alternatives for different use cases.

Multi-browser screenshot service with device emulation

Better For

Simple website thumbnail generation

Trade-off

Cross-browser screenshot testing

Multiple browser engines with mobile device simulation

Better For

Simple single-page screenshot needs

Trade-off

Testing across different browser engines and devices

Similar APIs

View All →