PDF generation is one of the most common reasons teams reach for a rendering API: archiving pages for compliance, generating invoices and receipts from HTML templates, or letting users export content. Screenshotty renders the page in headless Chrome and returns the PDF with format=application/pdf.
Because you can POST raw HTML as well as URLs, the same endpoint covers both "snapshot this live page" and "render this template I just built" workflows.
Try the free Website to PDF toolcurl -X POST "https://api.screenshotty.link/api/v1/screenshot" \-H "X-Api-Key: YOUR_API_KEY" \-H "Content-Type: application/json" \-d '{"url": "https://example.com/invoice/123","format": "application/pdf","full_page": true}' \--output invoice.pdf
Point at a live URL or POST your own HTML and CSS — ideal for invoice and report templates.
full_page=true captures the entire scrollable page into the document, handling lazy-loaded content.
Generate PDFs in bulk and receive a webhook callback when each document is ready — no polling.
Web fonts, flexbox, and modern CSS render exactly as in Chrome — no wkhtmltopdf quirks.
POST the target url with format=application/pdf to https://api.screenshotty.link/api/v1/screenshot. The page is rendered in headless Chrome and returned as a PDF. Get a free API key at screenshotty.link — 100 screenshots per month, no credit card required.
Yes. POST an html field instead of url — the API renders your markup (including external CSS and web fonts) and returns the PDF. This is the standard pattern for invoices and reports.
Yes. Screenshotty includes 100 screenshots per month for free with no credit card required. Paid plans start at $9/month for 2,500 screenshots, with pay-as-you-go overage at $0.004 per screenshot.
Yes. Every capture runs in a real headless Chrome browser, so single-page apps, lazy-loaded images, and dynamic content render exactly as they do for a real visitor. You can also wait for a specific ready event or add a custom delay with wait_ms.