Convert any URL to clean Markdown
The main content of any web page as LLM-ready Markdown — no navigation, ads or cookie banners. One request, 1 credit per page, from $0.20 per 1,000 pages.
100 free pages every month · No credit card · Sign up with Google in seconds
POST /api/markdown · 1 creditGet API keyOne POST request. Markdown back.
Send a URL and your API key. JsonLink fetches the page, extracts the main content and converts it to GitHub-flavored Markdown with its title, language and word count.
- Create a free account and copy your API key
- POST the URL to
/api/markdown - Use the
markdownfield in your prompt, index or RAG pipeline
curl -X POST https://jsonlink.io/api/markdown \
-H "Content-Type: application/json" \
-d '{"url": "https://github.com", "api_key": "YOUR_API_KEY"}'const res = await fetch('https://jsonlink.io/api/markdown', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
url: 'https://github.com',
api_key: process.env.JSONLINK_KEY,
}),
});
const { markdown, title, wordCount } = await res.json();import requests
res = requests.post("https://jsonlink.io/api/markdown", json={
"url": "https://github.com",
"api_key": JSONLINK_KEY,
})
markdown = res.json()["markdown"]$ch = curl_init('https://jsonlink.io/api/markdown');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'url' => 'https://github.com',
'api_key' => getenv('JSONLINK_KEY'),
]),
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
echo $data['markdown'];{
"url": "https://github.com",
"title": "GitHub · Change is constant. GitHub keeps you ahead. · GitHub",
"language": "en",
"wordCount": 305,
"markdown": "# GitHub · Change is constant. GitHub keeps you ahead. · GitHub\n\n## The future of building happens together\n\nT…"
}Markdown your model can actually use
Main content only
Readability-style extraction keeps the article and drops navigation, footers, ads, cookie banners and tracking scripts.
GitHub-flavored Markdown
Headings, lists, links, images, code blocks and tables come through as clean GFM your model and your parser understand.
Works on hard pages
Requests are retried with different user agents and a rotating proxy, with a headless browser fallback for pages that block simple fetches.
Metadata included
Every response carries the page title, detected language and word count, so you can filter and chunk before embedding.
One key for the whole web
The same key and credits also give you link metadata, screenshots, links and images from any URL.
Simple, predictable pricing
One credit per page, whatever its size. No token math, no per-format surcharges.
What developers build with it
RAG ingestion
Turn docs, blogs and help centers into clean Markdown before chunking and embedding.
Tools for AI agents
Give your agent a "read this URL" tool that returns text it can reason over, not HTML soup.
Summaries and briefs
Feed articles to an LLM for summaries, digests and newsletters without wasting tokens on markup.
Search and indexing
Index the readable content of pages for site search, research tools and knowledge bases.
URL to Markdown pricing
One credit per page. Credits are shared with every other JsonLink endpoint and renew every month.
A Firecrawl alternative for single pages
If you need one URL turned into Markdown — not a crawler or a search engine — JsonLink costs a fraction per page. Firecrawl's Hobby plan is $19/month for 5,000 pages ($3.80 per 1,000); JsonLink's Hobbie plan is $15/month for 50,000 pages ($0.30 per 1,000). Firecrawl's free plan is larger (1,000 pages/month) and it adds crawling and search, so pick the tool that fits the job.
Prices from Firecrawl's public pricing page, monthly billing (October 2026).
Frequently asked questions
How do I convert a URL to Markdown?
Send a POST request to https://jsonlink.io/api/markdown with the url and your api_key. The response contains the page content as Markdown, plus its title, language and word count.
Why use Markdown instead of HTML for LLMs?
Raw HTML is mostly scripts, styles, menus and tracking. Markdown keeps only the structure and text that matter, so you fit more content in the context window and pay for fewer tokens.
Is there a free plan?
Yes. Every account gets 100 free credits every month with no credit card — that is 100 pages converted to Markdown.
Does it work on JavaScript-heavy or protected pages?
JsonLink retries with different user agents and a rotating proxy, and falls back to a headless browser when a page blocks simple requests. Pages behind a login are not supported.
Are tables, links and images kept?
Yes. Output is GitHub-flavored Markdown, so tables, lists, links, images and code blocks are preserved inside the main content.
How is JsonLink different from Firecrawl or Jina Reader?
Firecrawl also crawls whole sites and runs searches. JsonLink focuses on turning one URL into Markdown, metadata or a screenshot at a lower price per page — 50,000 pages for $15 a month.
Convert your first page in a minute
100 free pages every month. No credit card, one POST request.