Microlink API
Free link preview API with no key for basic use: extract title, description, image, author and favicon from any URL. Powers unfurl previews. Tested example.
Endpoint tested and returned HTTP 200 on 2026-08-19
What is the Microlink API?
Microlink is a free link preview API that extracts structured metadata from any URL — title, description, preview image, author, publication date, logo and favicon — returning it as normalised JSON.
Link unfurling looks trivial until you try it: some sites use Open Graph, some Twitter cards, some only JSON-LD, and many need JavaScript executed before the metadata exists. Microlink handles all of that and returns one consistent shape.
The free tier allows around 50 requests per day without a key, which suits low-volume use or development. Because previews for a given URL rarely change, caching aggressively makes that allowance go a long way.
Quick facts
- Base URL
https://api.microlink.io- Authentication
- Free tier needs no key, at about 50 requests per day. A paid key raises limits substantially.
- Rate limit
- Roughly 50 requests per day on the free unauthenticated tier.
- Pricing
- Free tier; paid plans for production volume.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the Microlink API
Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.
1. Extract preview metadata from a URL
GET https://api.microlink.io/?url=https%3A%2F%2Fexample.com
curl 'https://api.microlink.io/?url=https%3A%2F%2Fexample.com'const res = await fetch("https://api.microlink.io/?url=https%3A%2F%2Fexample.com");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.microlink.io/?url=https%3A%2F%2Fexample.com", timeout=20)
res.raise_for_status()
print(res.json()){
"status": "success",
"data": {
"publisher": "example.com",
"lang": "en",
"title": "Example Domain",
"url": "https://example.com/",
"image": null,
"date": null,
"author": null,
"description": "This domain is for use in documentation examples without needing permission. Avoid use in operations.",
"logo": null
},
"statusCode": 200,
"redirects": [],
"headers": {
"age": "13041",
"allow": "GET, HEAD",
"cf-cache-status": "HIT",
"cf-ray": "a2d65d39d960643e-EWR",
"content-encoding": "br",
"content-type": "text/html",
"date": "Wed, 19 Aug 2026 04:20:09 GMT",
"last-modified": "Tue, 18 Aug 2026 20:06:42 GMT",
"server": "cloudflare"
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | Required | The URL to unfurl. Must be URL-encoded. https%3A%2F%2Fexample.com |
screenshot | boolean | Optional | Also capture a screenshot of the page. true |
meta | boolean | Optional | Include full metadata extraction. true |
palette | boolean | Optional | Extract a colour palette from the preview image. true |
Response fields
statusstring- `success` or `error`.
data.titlestring- Page title.
data.descriptionstring- Page description.
data.imageobject- Preview image with URL and dimensions, or null.
data.logoobject- Site logo or favicon.
data.publisherstring- Publisher or site name.
data.langstring- Detected page language.
What you can build with the Microlink API
- Render rich link previews in a chat, CMS or bookmarking app
- Generate Open Graph cards for user-submitted URLs
- Extract article metadata for a reading list
- Capture page screenshots for link cards
Common errors and how to fix them
429
Free tier daily allowance exhausted.
Fix: Cache previews by URL — they rarely change. A paid key raises the limit.
data.image is null
The page has no Open Graph or Twitter card image.
Fix: Fall back to the logo or a generated placeholder rather than rendering a broken image.
status: error
The target URL is unreachable or blocks scrapers.
Fix: Read the error message; some sites deliberately block metadata extraction.
Microlink API — frequently asked questions
Is Microlink free?
There is a free tier requiring no API key, limited to roughly 50 requests per day. Paid plans are needed for production volume.
What does a link preview API actually do?
It fetches a URL, executes any JavaScript needed, and normalises Open Graph, Twitter card and JSON-LD metadata into one consistent JSON shape — so you get a title, description and image regardless of how the site marks it up.
Why is the image field sometimes null?
The target page has no Open Graph or Twitter card image. Fall back to the site logo or a generated placeholder rather than showing a broken image.
Can I generate screenshots too?
Yes, pass screenshot=true. That consumes more of your quota than a metadata-only request.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
URL Encoder
Percent-encode text for URLs instantly. Switch between encodeURIComponent and encodeURI modes, see live output and copy the result. Free URL encoder.
Meta Tag Generator
Generate SEO-ready HTML meta tags with live character counters for title and description. Free meta tag generator with robots, viewport and charset options.
Microlink is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.