Skills website-screenshot

Capture screenshots of live websites and web pages via API. Use when users need to screenshot a URL, capture website previews, archive web pages, generate thumbnails of sites, or document web content. Ideal for monitoring, archiving, sharing website previews, or creating visual references of web pages.

install
source · Clone the upstream repo
git clone https://github.com/html2png/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/html2png/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/website-screenshot" ~/.claude/skills/html2png-skills-website-screenshot && rm -rf "$T"
manifest: website-screenshot/SKILL.md
source content

Website Screenshot API

Capture screenshots of any live website via

html2png.dev
.

Endpoint

POST https://html2png.dev/api/screenshot

Request

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "width": 1280, "fullPage": true}'

Parameters

ParameterTypeDefaultDescription
url
stringrequiredWebsite URL to capture
width
int1280Viewport width
height
int800Viewport height
fullPage
boolfalseCapture entire scrollable page
format
stringpngpng, webp, pdf
deviceScaleFactor
float2Retina scale (1-4)
delay
int0Wait ms before capture
omitBackground
boolfalseTransparent bg
colorScheme
string-light or dark
userAgent
string-Custom user agent

Response

{
  "success": true,
  "url": "https://html2png.dev/api/blob/screenshot-abc.png",
  "format": "png",
  "timestamp": "2025-01-27T10:30:00.000Z"
}

Examples

Basic Screenshot

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://github.com"}'

Full Page Capture

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "fullPage": true, "delay": 2000}'

Mobile Viewport

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "width": 375, "height": 812, "deviceScaleFactor": 3}'

PDF Export

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "format": "pdf", "fullPage": true}'

Dark Mode

curl -X POST "https://html2png.dev/api/screenshot" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "colorScheme": "dark"}'

JavaScript Example

const response = await fetch("https://html2png.dev/api/screenshot", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    url: "https://example.com",
    width: 1280,
    fullPage: true,
    delay: 1000,
  }),
});

const data = await response.json();
console.log(data.url);

Tips

  • Use
    delay
    for sites with heavy JavaScript or animations
  • fullPage
    captures the entire scrollable content
  • deviceScaleFactor=2
    or higher for crisp text
  • No caching - each request captures fresh content

Rate Limits

50 requests/hour per IP.