Use Case

Screenshot API for Directories & Listings

Automatically generate live website thumbnails for tool directories, startup listings, and curated collections.

The Problem

Directory thumbnails are a maintenance nightmare

Tool directories and listing sites need visual previews of every entry. Asking submitters to upload screenshots gives you inconsistent quality. Taking them manually doesn't scale. And static screenshots go stale as listed sites redesign.

  • User-submitted screenshots are inconsistent in size, quality, and format
  • Manual screenshot capture doesn't scale beyond a few dozen listings
  • Static thumbnails go stale as listed websites redesign
  • No easy way to refresh thousands of preview images on a schedule
The Solution

Live thumbnails for every listing, automatically

Point the API at any listing URL and get a consistent, up-to-date thumbnail. Schedule refreshes so previews always match the live site.

Step 1

Add a listing URL

When a new tool or site is submitted, pass its URL to the API.

Step 2

Generate a thumbnail

A single API call returns a consistent, correctly-sized preview image.

Step 3

Schedule refreshes

Run a weekly cron to re-capture all listings so thumbnails stay current.

Code Example

Get started in minutes

A single API call is all you need.

node.js
// Generate thumbnails for all directory listings
const listings = [
  { id: "1", url: "https://linear.app" },
  { id: "2", url: "https://vercel.com" },
  { id: "3", url: "https://supabase.com" },
];

for (const listing of listings) {
  const res = await fetch(
    `https://api.porto.dev/v1/screenshot?url=${encodeURIComponent(listing.url)}&width=1280&height=720&block_ads=true&format=webp`,
    { headers: { Authorization: "Bearer YOUR_API_KEY" } }
  );
  const buffer = Buffer.from(await res.arrayBuffer());
  // Save as /thumbnails/{listing.id}.webp
}

Try it in the playground

See results instantly with pre-configured defaults for this use case.

Key Features

Built for this use case

Consistent dimensions

Every thumbnail is the exact same size — no more mismatched preview cards.

WebP output

Compressed WebP format for fast-loading directory pages with hundreds of thumbnails.

Block ads & popups

Clean previews without cookie banners, chat widgets, or promotional overlays.

Batch endpoint

Refresh all listing thumbnails in a single batch API call.

Real-World Usage

How directory builders use screenshot APIs

  • Auto-generate thumbnails when new tools or sites are submitted
  • Weekly refresh of all listing previews to keep them current
  • Consistent visual cards across SaaS directories and Product Hunt-style sites
  • Curated collection pages with live website previews instead of logos
Pricing

Starts free. 100 API calls/month.

No credit card required. Scale up as you need with simple, predictable pricing.

Screenshot API for Directories & Listings | Porto