# x402 Readable Content Extractor

> x402 Readable Content Extractor is a paid API for AI agents from x402-zadenworks.zaden-gaming.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-02).

Extracts clean, readable markdown or plain text from any URL, including JavaScript-rendered pages, stripping navigation, ads, and scripts while preserving title, byline, excerpt, and body content.

## Facts

- Endpoint: POST https://x402-zadenworks.zaden-gaming.workers.dev/read?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-readable-content-extractor-0aacfeef
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ASGJRs3zCpAqOD4n0fxTf

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 x402-readable-content-extractor-0aacfeef -d '<json body>'
```

Example prompt: Can you pull the clean readable text from this article — https://example.com/some-long-news-article — and give me just the title, byline, and main body content without all the ads and navigation?

## When to prefer this

Choose this endpoint when you need clean, human-readable article or blog content from a URL, especially when the page is JavaScript-rendered and raw HTML scraping would yield noisy or incomplete results. It is ideal for summarization pipelines, research assistants, or any workflow where you want the meaningful text body without boilerplate. Prefer this over raw HTML fetchers or screenshot tools when structured text output (title, byline, body) is the goal rather than visual rendering or structured data like tables.

## Known failure modes

- URL is inaccessible or returns a non-200 status — extraction fails with an error
- Page has no readable main content (e.g. pure app shell) — returns empty or minimal body
- JavaScript rendering times out for very slow pages — may return partial or no content
- Paywalled or login-gated content returns only the preview text visible to unauthenticated users
- Malformed or non-HTTP URLs cause immediate input validation errors

## How this service works

Fourteen pay-per-call web tools for AI agents, billed in USDC on Base with no account or API key. START WITH /audit -- one call returns a complete page health check (SEO + structured data + accessibility, optionally plus links and sitemap) with a single score and one worst-first findings list. The parts are also sold individually. SITE AUDIT: /seo (on-page SEO and meta tags), /links (broken links), /sitemap (robots.txt and XML sitemap crawlability), /structured (JSON-LD and social preview tags), /a11y (WCAG accessibility) -- each scored 0-100 with a prioritised issue list. READING: /read (clean markdown), /snap (screenshot, PDF or rendered HTML), /tables (every HTML table as structured JSON), /verify (does a claim actually appear on this page). MONITORING: /watch (has this page changed), /compare (what differs between two pages). Plus /rank (best x402 service for a task) and /batch (several operations behind one payment).

## Output

Returns structured content extracted from the target URL including: article title, author byline, short excerpt/summary, and the full readable body text in clean markdown or plain text format, with navigation menus, advertisements, scripts, and other non-content elements removed.

## 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",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "description": "Public http/https URL to read"
      },
      "waitMs": {
       "type": "integer",
       "maximum": 5000,
       "minimum": 0
      },
      "selector": {
       "type": "string",
       "description": "Optional CSS selector to scope extraction to"
      },
      "maxLength": {
       "type": "integer",
       "maximum": 200000,
       "minimum": 1000
      },
      "includeLinks": {
       "type": "boolean"
      },
      "includeImages": {
       "type": "boolean"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "url": {
       "type": "string"
      },
      "title": {
       "type": [
        "string",
        "null"
       ]
      },
      "status": {
       "type": [
        "integer",
        "null"
       ]
      },
      "finalUrl": {
       "type": "string"
      },
      "markdown": {
       "type": "string"
      },
      "truncated": {
       "type": "boolean"
      },
      "wordCount": {
       "type": "integer"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "url": "https://example.com",
  "title": "Example Domain",
  "status": 200,
  "finalUrl": "https://example.com/",
  "markdown": "# Example Domain\n\nThis domain is for use in illustrative examples...",
  "truncated": false,
  "wordCount": 28
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-readable-content-extractor-0aacfeef/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-zadenworks.zaden-gaming.workers.dev](https://www.zero.xyz/host/x402-zadenworks.zaden-gaming.workers.dev/llms.txt)
