# PageWire Web Page to Markdown Extractor

> PageWire Web Page to Markdown Extractor is a paid API for AI agents from pagewire.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-12).

Fetches any public web page and returns its content as Markdown, along with metadata like title, description, links, and word count.

## Facts

- Endpoint: GET https://pagewire.dev/x402/extract?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/pagewire-web-page-to-markdown-extractor-c6054f87
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_t-q-Vo001uhkAjuG66khe

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 pagewire-web-page-to-markdown-extractor-c6054f87
```

Example prompt: Can you fetch the content of https://en.wikipedia.org/wiki/Markdown and give me the page text as Markdown along with the title and any links on the page?

## When to prefer this

Choose this endpoint when you need a quick, accountless, per-call way to convert any public web page into LLM-friendly Markdown with metadata. It requires no API key or account setup — just pay $0.01 USDC per call via x402. Ideal for AI agents that need to read arbitrary URLs on demand without managing subscriptions or credentials. Prefer this over browser automation tools when you only need the readable text content and metadata of a page, not screenshots or full DOM interaction.

## Known failure modes

- Non-public or paywalled URLs may return empty or partial markdown
- URLs that require JavaScript rendering may yield incomplete content
- Invalid or malformed URLs return an error response
- Pages returning non-200 HTTP status codes are reflected in the status field
- Very large pages may be truncated (truncated: true in response)
- Network timeouts may occur for slow or unresponsive servers

## How this service works

Pay-per-call web reading API and MCP server for AI agents: page to Markdown, metadata and small crawls. USDC via x402 or MPP, no account, no API key.

## Output

A JSON object containing the page URL, HTTP status code, title, meta description (or null), extracted Markdown of the page body, an array of links found on the page, word count, and a boolean indicating whether the content was truncated.

## 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",
    "queryParams"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "format": "uri",
       "description": "Public http(s) page to fetch"
      }
     },
     "additionalProperties": false
    }
   }
  },
  "output": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "properties": {
      "url": {
       "type": "string"
      },
      "links": {
       "type": "array",
       "items": {}
      },
      "title": {
       "type": "string"
      },
      "words": {
       "type": "number"
      },
      "status": {
       "type": "number"
      },
      "markdown": {
       "type": "string"
      },
      "truncated": {
       "type": "boolean"
      },
      "description": {
       "type": [
        "string",
        "null"
       ]
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "url": "https://example.com/",
  "links": [],
  "title": "Example Domain",
  "words": 25,
  "status": 200,
  "markdown": "This domain is for use in documentation examples without needing permission. This is not a service; avoid relying on it for testing and monitoring purposes.",
  "truncated": false,
  "description": null
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/pagewire-web-page-to-markdown-extractor-c6054f87/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from pagewire.dev](https://www.zero.xyz/host/pagewire.dev/llms.txt)
