📸Screenshots & Previews

Generate Webpage Previews via API

Link previews are the difference between "click here" and a beautiful card with title, description, and thumbnail that makes people actually click. denkbot.dog gives you both the metadata and the screenshot to build whatever preview component you need.

What you'd use this for

Building link preview cards in chat apps, rich URL bookmarking features, browser history enrichment, and any UI feature that shows what a URL looks like before you click.

How it works

example
// Fetch both metadata and screenshot in parallel
const [metaRes, shotRes] = await Promise.all([
  fetch('https://api.denkbot.dog/scrape', {
    method: 'POST',
    headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' },
    body: JSON.stringify({ url: 'https://example.com' }),
  }),
  fetch('https://api.denkbot.dog/screenshot', {
    method: 'POST',
    headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' },
    body: JSON.stringify({ url: 'https://example.com', width: 640, height: 400 }),
  }),
])
const meta = await metaRes.json()
const screenshot = await shotRes.arrayBuffer()

Questions & Answers

Can I use this to build an "unfurl" feature?+

Yes, exactly. Fetch the URL metadata and screenshot, cache them, display as a link card.

How do I store the screenshot?+

The response is raw PNG bytes. Upload them to S3, Cloudflare R2, Vercel Blob, wherever.

Should I cache the results?+

Absolutely. We cache on our end for 15 minutes, but you should cache results longer in your application.

Ready to start fetching?

€19/year. Unlimited requests. API key ready in 30 seconds.