Tools

PDF Thumbnail Generator API

Generate preview images from any PDF page.
One API call. PNG, JPG, or WebP output.

Generate preview images from any PDF page. One API call. PNG, JPG, or WebP output.

Try it below:

FILEDrop a file or click to upload

Production-ready

Private by design

Security-first

Scalable

Production-ready

Private by design

Security-first

Scalable

Production-ready

Private by design

Security-first

Scalable

Get thumbnail previews for any PDF

Upload a PDF, get a thumbnail URL back. Cached on our CDN.

What is Exabase's PDF thumbnail generator?

Upload a PDF, pick a page number and output size, and get back a preview image as a hosted URL. The output is a PNG, JPG, or WebP image served from the Exabase CDN. The Extract API handles the rendering, caching, and hosting. No LibreOffice, Ghostscript, ImageMagick, or any server-side PDF tooling on your end.

What developers use it for

File managers that show thumbnails in a grid view. Search results that display a visual preview alongside the filename. CMS platforms that auto-generate cover images for uploaded PDFs. Email clients that render attachment previews before download. Anywhere you need a document preview in a UI, this is the endpoint for it.

The same POST /v2/extract endpoint works for images and web pages too, so you can generate previews across file types without separate tooling. The Submitting Jobs guide walks through the full flow, and the Extract docs cover each content type.

Beyond thumbnails

The Extract API returns more than the preview image. You also get structured text chunks with page numbers, document metadata (author, title, page count, creation date), and a rendered PDF. That output is useful for document extraction, invoice processing, or feeding content into Deep Search so your documents become searchable at the paragraph level.

Store extracted documents as Resources and the search indexing happens automatically. Workers can re-extract updated documents on a schedule, which keeps a media asset library current without manual work.

Add it to your pipeline

For a working implementation, Build a Simple Document Extraction Tool walks through it end to end. API keys are available on the free plan.

How do I use it?

  1. Get your API key

Free, no credit card:

Sign up at exabase.io → copy your API key from the dashboard

  1. Generate a thumbnail

curl -X POST https://api.exabase.io/v2/pdf-thumbnail \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@report.pdf" \
  -F "page=1" \
  -F "width=600" \
  -F "format=png"
  1. Get an image URL back

{
  "status": "completed",
  "thumbnail": {
    "url": "https://cdn.exabase.io/thumbnails/abc123.png",
    "width": 600,
    "height": 776,
    "format": "png",
    "size": 84521,
    "page": 1
  }
}

One request. No LibreOffice, no Ghostscript, no ImageMagick.

What you get back

Field

Type

Description

status

string

completed or failed

thumbnail.url

string

CDN-hosted image URL

thumbnail.width

number

Image width in pixels

thumbnail.height

number

Image height in pixels

thumbnail.format

string

Output format (png, jpg, webp)

thumbnail.size

number

Image file size in bytes

thumbnail.page

number

Page number that was rendered

Need file extraction or full page content?

Exabase offers a full set of tools to extract content from any media, document or website.

All your data extraction needs in one place.

Why Exabase

Use cases

FAQs

What is Exabase?

Exabase is infrastructure for AI agents. It gives your agents memory, versioned file storage, AI deep search, and context automation through a set of APIs. Store what your agent learns, search inside any content type, and keep knowledge bases current automatically. Built for production use.

Who uses Exabase?

Developers and teams building AI agents, copilots, and RAG applications. If your agent needs to remember things between sessions, store and retrieve files, search across documents and media, or stay up to date without manual maintenance, Exabase handles that infrastructure so you can focus on your product.

Can I generate thumbnails from any page, not just the first?

Yes. Pass the page parameter with any page number. Pages are 1-indexed.

What output formats are supported?

PNG, JPG, and WebP. PNG is the default. For JPG and WebP, you can control compression quality with the quality parameter (1-100, default 85).

Can I control the output size?

Yes. Set width and/or height in pixels. If you only set width, the height is calculated automatically from the PDF's aspect ratio. Maximum output size is 2000px on the longest side.

Are thumbnails cached?

Yes. Generated thumbnails are cached on our CDN. If you request the same PDF and page again, the cached version is returned instantly. This means repeated requests are fast and don't count against your quota (after the first).

Can I send a URL instead of uploading a file?

Yes. Pass a url parameter pointing to a publicly accessible PDF instead of uploading a file directly. The API fetches and renders it.

Does it work with scanned PDFs?

Yes. Scanned PDFs are rendered as images just like any other PDF. The thumbnail will show exactly what the page looks like, including scanned content.

Does it work with password-protected PDFs?

No. Password-protected PDFs are not currently supported. Remove the password before uploading.

How fast is it?

Cached thumbnails return in under 50ms. First-time generation depends on the PDF complexity and page count, but typically completes in 1-3 seconds.

Can I generate thumbnails for all pages at once?

Not in a single request. Send one request per page. For batch processing, make parallel requests.

What's the difference between the thumbnail generator and Extract?

The thumbnail generator gives you a visual image of a PDF page. Extract gives you the actual content of the page as structured JSON, markdown, or text. One shows what the page looks like. The other tells you what it says. See PDF to JSON API.

Deciding?

Ask your favourite AI about Exabase:

Ship your first app in minutes.

Ship your first app in minutes.