Skip to content
SCREENSHOT · USE CASE

Website Preview API

Show a live visual preview of any URL inside your own product — link previews in chat, site pickers in onboarding, visual diffing in CI.

Show a live visual preview of any URL inside your own product — link previews in chat, site pickers in onboarding, visual diffing in CI.

Why render from HTML at all

A preview is a screenshot with tighter latency expectations, because the user is watching. That shifts the design from render-on-request to render once, serve from cache, refresh in the background. RenderKit's edge cache and signed URLs make that the default pattern rather than something you assemble yourself out of a queue and an object store.

The request

POSTscreenshot.sh
curl https://api.renderkit.tech/v1/screenshot \
  -H "x-api-key: $RENDERKIT_API_KEY" \
  -H "content-type: application/json" \
  -d '{ "url": "https://example.com", "full_page": true, "block_ads": true }'

Options that matter here

  • Signed CDN URLs — embeddable directly in an <img> with no proxy of your own
  • Explicit cache TTL, so previews refresh on your schedule
  • Geo rendering (US/UK) for sites that localise by IP
  • The same key reads the page as markdown if you also want its text

More

Full screenshot API reference · API docs · compare RenderKit vs ScreenshotOne.

Common questions

Call /v1/screenshot with the target URL and render the returned signed URL in an img tag. Cache the URL against the link record so repeat views cost nothing.

Yes — responses are signed CDN URLs served over HTTPS, so no proxying or re-hosting is required unless you want the asset on your own domain.

RenderKit starts at $9/mo with 500 free renders, and screenshots, PDFs, and markdown extraction all draw from the same meter — there is no separate per-primitive plan.

Ship your first render in 60 seconds.

500 free renders to start. No card. Cancel by ignoring it.

Get your free key$npm i renderkit-sdk