Developer-first metered API for link unfurls, archiving, exports, and monitoring. No browser infrastructure to manage. Just endpoints.
Title, description, og:image and basic metadata.
GET /v1/preview?url=…
JPEG output. Cache keeps repeat renders cheap.
GET /v1/screenshot?url=…&fullPage=1
A4 PDF with print background enabled.
GET /v1/pdf?url=…
All endpoints require x-api-key (except /health).
curl -H "x-api-key: YOUR_KEY" \ "https://api.pagekernel.dev/v1/preview?url=https://example.com" curl -H "x-api-key: YOUR_KEY" \ "https://api.pagekernel.dev/v1/screenshot?url=https://example.com" \ -o example.jpg curl -H "x-api-key: YOUR_KEY" \ "https://api.pagekernel.dev/v1/pdf?url=https://example.com" \ -o example.pdf curl -H "x-api-key: YOUR_KEY" "https://api.pagekernel.dev/v1/usage"
Credit costs: preview=1 • screenshot=2 • pdf=3
Tip: repeated renders are served from cache (no extra credits).
429? retry after a short delay (browser rendering has burst limits).
Credits are only charged when we do real work. Cache hits are free.
Higher volume / custom? Email support@pagekernel.dev
What counts as a credit? Preview=1, Screenshot=2, PDF=3. Cache hits are not charged.
Do you store my screenshots/PDFs? No permanent storage—responses are generated on demand. (Caching is used to speed repeat renders.)
Why might I get a 429? Browser rendering has burst limits; retry after a short delay and leverage caching.
Can I rotate keys? Yes — key rotation is supported (you’ll be shown the new key once).