# Tavily Extract – Clean Page Content from URLs

> Tavily Extract – Clean Page Content from URLs is a paid API for AI agents from vaaya.ai, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Extracts clean, JavaScript-rendered page content from up to 5 URLs in a single call, returning markdown or plain text.

## Facts

- Endpoint: POST https://vaaya.ai/api/run/tavily/extract
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tavily-extract-clean-page-content-from-urls-77fd5229
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_3XwchAHAbgGiQyRf4OG2-

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 tavily-extract-clean-page-content-from-urls-77fd5229 -d '<json body>'
```

Example prompt: Can you fetch the clean readable content from these three URLs — https://example.com/article1, https://example.com/article2, and https://example.com/article3 — and return it as markdown?

## When to prefer this

Choose this endpoint when you already have specific URLs and need JS-rendered page content — it handles dynamic sites that static fetchers can't parse. At $0.01 per call for up to 5 URLs (0.2¢/URL), it's cheaper than Firecrawl (1¢/URL) and more capable than Exa contents (no JS). Prefer it when you need rendered content from JavaScript-heavy pages. Use Exa/contents for large static batches where JS is not needed, or Firecrawl when you need full rendering with screenshots or structured extraction.

## Known failure modes

- URL is unreachable or returns a 4xx/5xx error — that URL's content may be null or omitted
- More than 5 URLs submitted — caller must split into multiple requests
- JavaScript-heavy SPA with anti-bot protection may return incomplete or empty content
- Paywalled or login-gated pages return only publicly visible content
- Malformed URL in the array may cause partial or full call failure

## How this service works

Tavily — extract clean page content (JS handled) from up to 5 URLs you already have, in one 1¢ call. Pass `urls` (array, ≤5); optional `format` (markdown default | text). For bigger batches make multiple calls. Alternative to exa/contents (0.1¢/url, no JS) and firecrawl/scrape (1¢/url, full rendering).

## Output

Returns the extracted clean content for each submitted URL, with JavaScript fully rendered. Each URL's content is provided in the requested format (markdown by default, or plain text), suitable for reading, indexing, or summarization. Up to 5 URLs are processed per call.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "$schema": "http://json-schema.org/draft-07/schema#",
     "required": [
      "urls"
     ],
     "properties": {
      "urls": {
       "type": "array",
       "items": {
        "type": "string",
        "format": "uri"
       },
       "maxItems": 5,
       "minItems": 1
      },
      "format": {
       "enum": [
        "markdown",
        "text"
       ],
       "type": "string"
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tavily-extract-clean-page-content-from-urls-77fd5229/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from vaaya.ai](https://www.zero.xyz/host/vaaya.ai/llms.txt)
