Free Thumbnail & Preview API for Developers — Generate Instant Previews for Any URL
Why We Built This
We built The Drive — a cloud storage platform where users upload files and our AI organizes, summarizes, and surfaces them. Pretty quickly we ran into a problem: how do you show a useful thumbnail for a user-uploaded PDF? Or an AI-generated summary doc? Or a random link someone saved?
We looked around. The existing solutions were either expensive, required API keys and complex setup, or just didn't support the range of formats we needed. So we built our own preview engine internally — and then realized other developers probably have the exact same problem.
So we opened it up. preview.thedrive.ai is the preview service we wished existed when we started building The Drive.
See It in Action
Here is a live preview of our own site, generated by the API:
https://preview.thedrive.ai/https://thedrive.ai
And this is the image it produces:
That is a real image, generated on the fly. No screenshots, no manual uploads — just a URL.
How It Works
There is no SDK to install, no API key to register, and no authentication flow. The entire API is one endpoint:
GET https://preview.thedrive.ai/{url}
Pass any publicly accessible URL, and you get back a thumbnail image. That is it.
Want to embed it? Just drop it in an <img> tag:
<img src="https://preview.thedrive.ai/https://thedrive.ai" alt="Preview" />
It works anywhere you can use an image URL — in HTML, Markdown, Slack bots, emails, Notion embeds, you name it.
Supported Formats
This is where we think it really shines. We didn't build this just for websites — we built it because we needed to preview files.
| Format | Examples |
|---|---|
| Documents | PDF, DOCX, PPTX, XLSX |
| Images | PNG, SVG |
| Video | MP4, MOV |
| Websites | Any public URL |
PDFs hosted on S3, slide decks on Google Drive, video files, spreadsheets — all through the same endpoint. One URL pattern to rule them all.
Customization Options
Control the output with query parameters:
GET https://preview.thedrive.ai/{url}?w=400&h=300&q=90
| Parameter | Description | Default |
|---|---|---|
w | Width in pixels | 600 |
h | Height in pixels | 400 |
q | Image quality (1–100) | 95 |
nocache | Bypass cache (true) | — |
Need a small thumbnail for a card grid? ?w=200&h=150. Need a high-res preview for a lightbox? ?w=1200&h=800&q=100. You get the idea.
Real-World Use Cases
1. Chat Applications
Show inline previews when users share links — no client-side rendering needed.
function LinkPreview({ url }) {
return (
<img
src={https://preview.thedrive.ai/${url}?w=400&h=300}
alt="Link preview"
loading="lazy"
/>
);
}
2. File Managers and Cloud Storage UIs
This is exactly why we built it. Display document thumbnails without downloading and processing files on your server.
function FileThumbnail({ fileUrl, fileName }) {
return (
<div className="file-card">
<img src={https://preview.thedrive.ai/${fileUrl}?w=200&h=150} alt={fileName} />
<span>{fileName}</span>
</div>
);
}
3. CMS and Blog Platforms
Auto-generate Open Graph–style previews for any link your authors paste.

4. Slack and Discord Bots
Return a preview image URL directly in your bot responses. No headless browser needed on your server.
5. Email Campaigns
Embed preview thumbnails for linked resources — recipients see a visual snapshot without leaving their inbox.
<a href="https://example.com/whitepaper.pdf">
<img src="https://preview.thedrive.ai/https://example.com/whitepaper.pdf?w=500&h=350" alt="Download whitepaper" />
</a>
Why Not Build It Yourself?
Trust us, we tried. Here is what that journey looks like:
- Websites: Spin up Puppeteer or Playwright, manage a headless Chrome instance, handle timeouts, cookie banners, lazy-loaded content, and SPAs that render nothing on first paint.
- PDFs: Parse with pdf.js or a server-side library, render page one to an image, deal with fonts that don't embed correctly.
- Office docs: Convert DOCX/PPTX/XLSX with LibreOffice in headless mode or pay for a conversion API.
- Videos: Extract frames with FFmpeg, handle codec issues across platforms.
- Infrastructure: Run, scale, and monitor all of the above. Handle caching, error recovery, format detection, and the endless stream of edge cases.
We went through all of that so you don't have to. Prepend preview.thedrive.ai/ to the URL and move on to the feature your users actually asked for.
Integration in Under 5 Seconds
React / Next.js
const PreviewImage = ({ url, width = 600, height = 400 }) => (
<img
src={https://preview.thedrive.ai/${url}?w=${width}&h=${height}}
alt="Preview"
loading="lazy"
style={{ borderRadius: 8 }}
/>
);
Python
from urllib.parse import quote
def get_preview_url(url: str, width: int = 600, height: int = 400) -> str:
return f"https://preview.thedrive.ai/{quote(url, safe=':/')}?w={width}&h={height}"
cURL
curl -o preview.png "https://preview.thedrive.ai/https://thedrive.ai?w=800&h=600"
Markdown

Pricing
Preview API is free. No API keys, no rate-limit tiers, no credit card required. We built this for ourselves and figured the developer community could use it too.
Get Started
Head to preview.thedrive.ai and try it yourself. Paste any URL — a PDF, a website, a video — and watch the preview generate in seconds.
Then drop that URL into your app and ship it. We would love to see what you build with it.
Have questions or feedback? Reach out at contact@thedrive.ai.
Enjoyed this article?
Share it with your network
