Any URL to clean Markdown.

One API call turns any web page into LLM-ready Markdown. Built for AI agents, RAG pipelines, and scrapers — fetch, render JavaScript, strip the clutter. You get the content, not the noise.

250 pages/mo free · no card · plans from $29/mo · or pay per call with x402 or MPP

Get a free API key

250 pages a month, free. No credit card. Your key works instantly.

need higher limits or a paid plan? talk to us

A tiered engine that only spends what it must

01

Fetch

We fetch the URL server-side with a real browser fingerprint and a strict SSRF guard. Static and server-rendered pages stop here.

02

Render if needed

If a page is a JavaScript shell, we escalate to a headless render — only when the content is too thin, so you never overpay.

03

Extract

Nav, ads, cookie banners and boilerplate are stripped. You get headings, lists, links, images and code as clean Markdown.

One call, clean Markdown back

curl -X POST https://api.minibase.md/v1/convert \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/article"}'

Response

{
  "markdown": "📄 Title: Example Article\n🔗 Source: ...\n\n---\n\n## Heading\n\nClean body...",
  "meta": { "tier": 1, "cached": false, "domain": "example.com", "template": "markdown" },
  "usage": { "credits": 1 }
}

Simple plans that grow with you

Start free, no card. Move up when you need more. Every account begins on the free tier.

Free

$0 forever

250 pages / month

  • Any URL to clean Markdown
  • Automatic JavaScript rendering
  • No credit card
  • 300+ site-specific extractors
Get your free key

Starter

$29 / month

25,000 pages / month

  • Everything in Free
  • 25k pages a month
  • AI-formatted output
  • Email support
Start free
Most popular

Pro

$99 / month

150,000 pages / month

  • Everything in Starter
  • 150k pages a month
  • Priority rendering
  • Higher rate limits
Start free

Scale

$299 / month

600,000 pages / month

  • Everything in Pro
  • 600k pages a month
  • Whole-site crawl (coming)
  • Direct line to the maker
Talk to us

pages = URL to Markdown, JS rendering included · AI-formatted output on Starter+ · need more? talk to us

POST /v1/convert

Authenticate with Authorization: Bearer sk_live_…. Keys are server-side only — never ship one in a browser or app bundle.

url string required

The page to convert. http(s) only.

template string optional

Omit for raw Markdown. Pass an AI template (clean, summary, outline…) for LLM formatting (token-metered).

render "auto" | "never" | "always" optional

JavaScript rendering. Default "auto" escalates to Tier 2 only when a page is a JS shell.

fresh boolean optional

Bypass the 24h cache and refetch.

Walled gardens: YouTube routes through its official transcript API. X / Instagram / TikTok are best-effort. We never use ghost accounts or scrape behind logins.

x402 · mpp · stablecoin payments

Pay per call. No account.

Signup forms are built for humans. An agent that needs one page converted right now can't create an account, confirm an email and paste a key — so it gives up and uses something else. Call the endpoint with no credentials and you get a price instead of a rejection, quoted in both protocols at once: speak either one.

1 · ask

# No key at all → the API quotes a price, in two protocols
curl -i -X POST https://api.minibase.md/v1/convert \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/article"}'

HTTP/2 402 Payment Required
payment-required: eyJ4NDAyVmVyc2lvbiI6MiwicmVzb3VyY2UiOnsi...   # x402
www-authenticate: Payment id="...", method="tempo", ...          # MPP

2a · x402 terms (base64 in payment-required)

{
  "x402Version": 2,
  "accepts": [{
    "scheme": "exact",
    "network": "eip155:8453",        // Base mainnet
    "amount": "10000",               // $0.01 — USDC has 6 decimals
    "asset":  "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "payTo":  "0xfb8157a583e3050440301f418f5e890190222a5c",
    "maxTimeoutSeconds": 300
  }]
}

2b · MPP challenge (www-authenticate)

Payment id="CuHl2FqE9NlT4Iqp5-O7XL8UPSIR...", realm="api.minibase.md",
        method="tempo", intent="charge", request="<base64>"

{
  "amount":    "10000",              // $0.01 — USDC has 6 decimals
  "currency":  "0x20C0...b9537d11c60E8b50",
  "recipient": "0x248970469b7f5f980fcb4b4b5ab6a92c85719e8d",
  "methodDetails": { "chainId": 4217 }   // Tempo mainnet
}

3 · pay and retry

Your client signs a USDC transfer — on Base for x402, on Tempo for MPP — and repeats the request with the payment attached. The conversion comes back in the same round trip — no invoice, no dashboard, no waiting on a human.

$0.01 / call

USDC on Base (x402) or Tempo (MPP). No commitment, no minimum, no card.

Settled by Stripe

The deposit address is issued by Stripe. We never hold a wallet or a private key.

Or stay on keys

Nothing changes for key holders — same quota, same plans, same 401 on a bad key.

x402 and MPP are open payment protocols that put HTTP's long-dormant 402 Payment Required status to work. Evaluating by hand instead? Grab a free key — 250 pages a month, no card.

The web, readable by your agent

LLMs read Markdown, not HTML. Point an agent, a RAG ingest job, or a research loop at any URL and get back tokens worth keeping. This spec is also available as plain Markdown at /api.md. The API is discoverable through our llms.txt, agent-skills index, and API catalog.

Ship the web as Markdown

Get a free key and convert your first page in under a minute.

Get a free key

free to start · plans from $29/mo · cancel anytime