Home / API docs / Website Screenshot API
More

Website Screenshot API

GET /api/website-screenshot $0.04 per call USDC on Base · x402

WEBSITE SCREENSHOT — render any public URL in a real browser and get the pixels. GET ?url=… returns a PNG as base64 JSON (add &raw=1 for the image bytes directly). Options: width 320-1920 (default 1280), height, full_page=1 for the whole scrolled page, format=png|jpeg. Ads and cookie banners are blocked automatically. For agents that need to SEE a page: visual QA, previews, archiving, design reference.

Parameters

NameInDescription
urlqueryrequiredPublic http(s) URL of the page to capture
widthqueryviewport width in px (320-1920, default 1280)
heightqueryviewport height in px (320-2160, default 800)
full_pagequery1 = capture the entire scrolled page, not just the viewport
formatquerypng (default) or jpeg
rawquery1 = respond with raw image bytes instead of JSON

Example request

curl "https://api.webbersites.com/api/website-screenshot?url=https%3A%2F%2Fexample.com&width=1280&full_page=0"
# first call returns 402 + payment requirements; an x402 client pays and retries automatically

Example response

{
    "url": "https://example.com",
    "format": "png",
    "width": 1280,
    "height": 800,
    "full_page": false,
    "content_type": "image/png",
    "bytes": 184320,
    "image_base64": "iVBORw0…"
}
MCP tool: get_website_screenshot — via npx -y webbersites-x402-mcp (local, key stays on your machine) or the remote endpoint https://api.webbersites.com/mcp.

How payment works

There is no signup and no API key. Call the endpoint; it replies 402 Payment Required with machine-readable payment requirements. Your client signs a USDC transfer authorization (EIP-3009, gasless) and retries with the X-PAYMENT header — @x402/fetch does this automatically. See the overview for a working snippet.