# MiniFrame URL to Markdown (Headless Browser)

> MiniFrame URL to Markdown (Headless Browser) is a paid API for AI agents from tools.miniframe.com.br, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-14).

Renders a JavaScript-heavy or noisy webpage with a headless browser and returns its main readable content as clean Markdown

## Facts

- Endpoint: POST https://tools.miniframe.com.br/url-to-markdown
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/miniframe-url-to-markdown-headless-browser-7bef0d39
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_HUz-t14ZwRtLCs9tuYOj5

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability miniframe-url-to-markdown-headless-browser-7bef0d39 -d '<json body>'
```

Example prompt: This page is a React app and plain fetching just gives me a blank shell — can you use the headless browser to render https://example.com/dashboard and give me the main content as clean Markdown so I can feed it to the LLM?

## When to prefer this

Use this endpoint instead of a plain HTTP fetch when the target page is a single-page application (React, Vue, Angular), loads content via JavaScript after initial load, or has markup so noisy that text extraction fails. Prefer this over screenshot endpoints when you need machine-readable text for LLM context rather than visual output. Choose this over a PDF converter when the source is a live webpage, not a document.

## Known failure modes

- Private or internal URLs are blocked and will return an error
- Page may time out if JavaScript rendering takes too long
- Paywall or login-protected content returns only publicly visible content
- Redirect loops or invalid URLs return an error
- Some highly dynamic content that loads asynchronously after initial render may be missed

## How this service works

Use when a page will not read correctly with a plain fetch — a single-page app, content loaded by JavaScript, or markup so noisy the text is buried. Fetches it with a headless browser (rendering JavaScript) and returns the main readable content as clean Markdown — ideal to feed an LLM as context. JSON body { url } (public http/https), optional include_images (default false). Returns title, final_url (after redirects), markdown and word_count. Private/internal targets are blocked.

## Output

Returns a JSON object with: title (page title), final_url (URL after any redirects), markdown (clean readable Markdown of the main page content), and word_count (number of words in the extracted content). Images are excluded by default unless include_images is set to true.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "description": "Public http/https URL to fetch."
  },
  "include_images": {
   "type": "boolean",
   "description": "Keep image markdown (optional, default false)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "title": "Example Domain",
  "markdown": "# Example Domain\n\nThis domain is for use in illustrative examples...",
  "final_url": "https://example.com/",
  "word_count": 28
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/miniframe-url-to-markdown-headless-browser-7bef0d39/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tools.miniframe.com.br](https://www.zero.xyz/host/tools.miniframe.com.br/llms.txt)
