One API key for pixel-perfect screenshots, PDF generation, web scraping, and LLM-ready content extraction. Start free in 60 seconds.
$ curl -X POST https://api.snapapi.pics/v1/screenshot \
-H "X-Api-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{"url":"https://github.com","format":"png","full_page":true}' \
--output screenshot.png
✓ screenshot.png saved — 1280x3200px, PNG, 412 KB, 2.1s
Enter any URL and capture a screenshot, video or scroll recording in real-time.
Your screenshot will appear here
Capturing screenshot...
Six production-grade capabilities under a single API key. No stitching together multiple services.
URL to pixel-perfect PNG, JPEG, WebP, or AVIF in milliseconds. Full-page, element selectors, mobile viewports, dark mode, retina 2x.
POST /v1/screenshot
Render any URL or raw HTML to a production-quality PDF. Control margins, page size, headers and footers.
POST /v1/screenshot?format=pdf
Extract structured JSON data from any page. Stealth mode bypasses bot detection. Works on JS-heavy SPAs.
POST /v1/scrape
URL to clean markdown in one call. Powered by Mozilla Readability. Feed articles, docs, and pages straight into your LLM pipeline.
POST /v1/extract
Render dynamic Open Graph and social media preview images from a URL template. Ship social sharing in an afternoon.
GET /v1/screenshot?og=true
Record scrolling page animations as MP4 or GIF. Unique to SnapAPI — ScreenshotOne doesn't offer this at any plan tier.
POST /v1/video
Real working code in every language you use. No boilerplate, no setup beyond your API key.
// npm install snapapi-js
import SnapAPI from 'snapapi-js';
const client = new SnapAPI({ apiKey: 'sk_live_your_key' });
// Screenshot
const screenshot = await client.screenshot.capture({
url: 'https://github.com',
format: 'png',
fullPage: true,
blockAds: true,
});
fs.writeFileSync('screenshot.png', screenshot);
// Extract content for LLMs
const content = await client.extract.markdown({ url: 'https://example.com/article' });
console.log(content.markdown); // Clean markdown, ready for your LLM
# pip install snapapi-python
from snapapi import SnapAPI
client = SnapAPI(api_key="sk_live_your_key")
# Screenshot
screenshot = client.screenshot.capture(
url="https://github.com",
format="png",
full_page=True,
block_ads=True,
)
with open("screenshot.png", "wb") as f:
f.write(screenshot)
# Extract content for LLMs
content = client.extract.markdown(url="https://example.com/article")
print(content.markdown) # Clean markdown, ready for your LLM
// go get github.com/Sleywill/snapapi-go
package main
import (
"os"
snapapi "github.com/Sleywill/snapapi-go"
)
func main() {
client := snapapi.New("sk_live_your_key")
// Screenshot
data, _ := client.Screenshot.Capture(snapapi.ScreenshotRequest{
URL: "https://github.com",
Format: "png",
FullPage: true,
})
os.WriteFile("screenshot.png", data, 0644)
// Scrape structured data
result, _ := client.Scrape.Extract(snapapi.ScrapeRequest{
URL: "https://example.com/product",
})
fmt.Println(result.Data)
}
// composer require snapapi/snapapi-php
use SnapAPI\Client;
$client = new Client('sk_live_your_key');
// Screenshot
$screenshot = $client->screenshot->capture([
'url' => 'https://github.com',
'format' => 'png',
'full_page' => true,
'block_ads' => true,
]);
file_put_contents('screenshot.png', $screenshot);
// Generate PDF
$pdf = $client->screenshot->capture([
'url' => 'https://example.com/report',
'format' => 'pdf',
]);
file_put_contents('report.pdf', $pdf);
# Screenshot → PNG
curl -X POST https://api.snapapi.pics/v1/screenshot \
-H "X-Api-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{"url":"https://github.com","format":"png","full_page":true}' \
--output screenshot.png
# PDF generation
curl -X POST https://api.snapapi.pics/v1/screenshot \
-H "X-Api-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com","format":"pdf"}' \
--output page.pdf
# Content extraction → Markdown
curl -X POST https://api.snapapi.pics/v1/extract \
-H "X-Api-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/article","type":"markdown"}'
// swift package add SnapAPISwift
import SnapAPISwift
let client = SnapAPIClient(apiKey: "sk_live_your_key")
// Screenshot
let image = try await client.screenshot.capture(
url: "https://github.com",
format: .png,
fullPage: true
)
try image.write(to: URL(fileURLWithPath: "screenshot.png"))
// Scrape data
let data = try await client.scrape.extract(url: "https://example.com")
print(data.structured)
From AI pipelines to SaaS features — see how teams use SnapAPI in production.
Extract clean markdown from any URL and pipe it directly into GPT-4, Claude, or your own model. No HTML parsing, no noise — just the content your LLM needs to work with.
Add invoice PDFs, report exports, and OG image generation to your SaaS without managing a headless browser. One API call, one API key, done.
Screenshot 10,000 URLs per hour with zero infrastructure to manage. Compare diffs, catch visual regressions, and automate your QA pipeline.
Scrape competitor prices, product listings, and inventory data. Stealth mode handles bot detection so you focus on the data, not the infrastructure.
Start free, no credit card. At 50,000 requests/month, SnapAPI Pro ($79) costs 3.3x less than ScreenshotOne ($259).
More features, lower cost, and the only all-in-one API that includes video recording and content extraction.
| Feature | SnapAPI | ScreenshotOne | Urlbox | Firecrawl |
|---|---|---|---|---|
| 50K req/mo price | $79/mo | $259/mo | $149/mo | $83/mo (scrape only) |
| Free tier | 200/mo — no card | 100/mo | 100/mo | 500/mo |
| Screenshot API | Yes | Yes | Yes | No |
| PDF generation | Yes | Yes | Yes | No |
| Web scraping | Yes | No | No | Yes |
| Content extraction (Markdown) | Yes | No | No | Yes |
| Video recording (MP4/GIF) | Yes | No | No | No |
| AVIF format | Yes | No | No | No |
| Official SDKs | 6 languages | 8 languages | 6 languages | 4 languages |
| Failed requests billed | Never | Never | Never | Never |
"full_page": true to your request body. Works with all image formats and is available on every plan including free.
38+ developers use SnapAPI in production.
From solo builders to funded teams — here's what they say.
"Switched from ScreenshotOne after hitting their pricing wall. Same quality screenshots, the PDF and scraping endpoints saved us from running a second service. Migrated in half a day."
"We pipe the content extraction endpoint directly into our LLM workflow. Clean markdown, no noise. At $79/mo for 50K calls it's a no-brainer for the AI stack."
"The Python SDK is excellent. Four lines of code to add screenshot exports to our dashboard. The free tier was enough to validate the idea before we committed to a plan."