FetchSC

Fetch Screen Capture

The fast, reliable website screenshot API for developers

Take a Screenshot

Plans & Pricing

Anonymous

Free
  • 10 screenshots / hour
  • No API key required
  • All formats (PNG, JPEG, WebP)
  • Custom viewport sizes

Ultimate

Paid
  • 2,000 screenshots / hour
  • Dedicated API key
  • All formats (PNG, JPEG, WebP)
  • Custom viewport sizes
  • Full page capture
  • Priority support
Contact Us

API Documentation

Endpoint

GET /api/screenshot?url=https://example.com

Parameters

ParamTypeDefaultDescription
urlstringrequiredWebsite URL to capture
widthnumber1280Viewport width (320-3840)
heightnumber720Viewport height (200-2160)
formatstringpngImage format: png, jpeg, webp
full_pagebooleanfalseCapture entire scrollable page
delaynumber0Wait N seconds before capture (0-10)
api_keystringnoneAPI key (or use Bearer auth header)

Authentication

Pass your API key as a query parameter or via the Authorization header:

Authorization: Bearer fsc_prm_your_key_here

Rate Limit Headers

All responses include rate limit information:

X-RateLimit-Limit: 500
X-RateLimit-Remaining: 499
X-RateLimit-Tier: premium

Code Examples

curl "https://fetchsc.com/api/screenshot?url=https://example.com&format=png" \
  -H "Authorization: Bearer fsc_prm_your_key" \
  -o screenshot.png
const res = await fetch(
  "https://fetchsc.com/api/screenshot?url=https://example.com&format=png",
  { headers: { Authorization: "Bearer fsc_prm_your_key" } }
);
const blob = await res.blob();

// Save to file (Node.js)
const fs = require("fs");
const buffer = Buffer.from(await res.arrayBuffer());
fs.writeFileSync("screenshot.png", buffer);
import requests

res = requests.get(
    "https://fetchsc.com/api/screenshot",
    params={"url": "https://example.com", "format": "png"},
    headers={"Authorization": "Bearer fsc_prm_your_key"},
)

with open("screenshot.png", "wb") as f:
    f.write(res.content)
package main

import (
	"io"
	"net/http"
	"os"
)

func main() {
	req, _ := http.NewRequest("GET",
		"https://fetchsc.com/api/screenshot?url=https://example.com&format=png", nil)
	req.Header.Set("Authorization", "Bearer fsc_prm_your_key")

	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()

	f, _ := os.Create("screenshot.png")
	defer f.Close()
	io.Copy(f, res.Body)
}

Why Choose FetchSC for Website Screenshots?

FetchSC makes it easy to capture high-quality screenshots of any website with a simple API call or our built-in web tool. No headless browser setup, no infrastructure to manage.

Lightning Fast

Optimized headless browser pipeline captures screenshots in seconds. Resource blocking and smart wait strategies ensure fast, consistent results every time.

Multiple Formats

Export screenshots as PNG for pixel-perfect quality, JPEG for smaller file sizes, or WebP for modern web performance. Choose the format that fits your workflow.

Full Page Capture

Capture the entire scrollable page, not just the visible viewport. Perfect for archiving long articles, landing pages, and documentation sites.

Custom Viewports

Set any viewport size from 320px to 3840px wide. Test responsive designs, capture mobile views, or generate desktop-sized screenshots on demand.

Simple REST API

A single GET request is all you need. No SDKs to install, no complex setup. Works with cURL, JavaScript, Python, or any HTTP client.

Free to Start

Get 10 free screenshots per hour with no API key or signup. Upgrade to Premium or Ultimate when you need higher volume and priority support.

Use Cases for Website Screenshots

Link Previews & Social Cards

Generate thumbnail previews for shared links in chat apps, social media platforms, or internal dashboards. Show users what a page looks like before they click.

Competitor & Design Monitoring

Automatically capture screenshots of competitor websites on a schedule. Track design changes, pricing updates, and landing page variations over time.

QA & Visual Regression Testing

Integrate FetchSC into your CI/CD pipeline to capture screenshots before and after deployments. Detect visual regressions across browsers and viewport sizes.

Web Archiving & Compliance

Archive web pages as images for legal compliance, audit trails, or historical records. Capture full-page screenshots of terms of service, regulatory pages, and more.

How It Works

1

Enter a URL

Paste any website URL into the form above or pass it as a query parameter to the API. Protocol is optional — we auto-detect HTTPS.

2

Customize Settings

Choose your viewport size, image format (PNG, JPEG, WebP), and whether to capture the full scrollable page or just the viewport.

3

Get Your Screenshot

The API returns the image directly as binary data. Download it, display it inline, or pipe it to your storage — it's just a standard image response.

Frequently Asked Questions

What is FetchSC?

FetchSC (Fetch Screen Capture) is a website screenshot API that lets you capture any web page as a high-quality PNG, JPEG, or WebP image using a simple REST API call or the built-in web tool.

Is FetchSC free to use?

Yes. The free tier allows 10 screenshots per hour with no API key or signup required. Premium and Ultimate plans are available for higher volume needs.

What image formats are supported?

FetchSC supports PNG, JPEG, and WebP output formats. You can also set custom viewport sizes and capture full-page scrollable screenshots.

Can I capture a full-page screenshot?

Yes. Set the full_page parameter to true to capture the entire scrollable page, not just the visible viewport.

Do I need an API key?

No. Anonymous users get 10 free screenshots per hour. An API key unlocks higher rate limits on Premium and Ultimate plans.

How fast are screenshots captured?

Most screenshots are captured in 2-5 seconds. FetchSC blocks unnecessary resources like analytics trackers and fonts to speed up page loading.

Can I use FetchSC in my application?

Absolutely. FetchSC exposes a simple REST API — just send a GET request with the target URL. It works with any programming language or HTTP client.