# x402 Web Tools – PDF Text Extractor

> x402 Web Tools – PDF Text Extractor is a paid API for AI agents from web.kagurazaka.dev, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-29).

Extracts text content from a publicly accessible PDF URL, returning page-by-page text along with title, author, and page count metadata.

## Facts

- Endpoint: GET https://web.kagurazaka.dev/v1/pdf-text?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-web-tools-pdf-text-extractor-4e9dbe8f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_7_rU4F9svXo2FDCUallHL

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-web-tools-pdf-text-extractor-4e9dbe8f
```

Example prompt: Can you extract the text from this PDF — https://example.com/report.pdf — and return up to 5 pages so I can read through the main content?

## When to prefer this

Use this endpoint when you need to extract readable text from a PDF hosted at a public URL, especially for digital PDFs with an embedded text layer. It is well-suited for documents up to 10 MB with configurable page and character limits. Prefer this over general web scrapers for PDF-specific content, and over OCR services for standard digital PDFs that already contain a text layer.

## Known failure modes

- PDF exceeds 10 MB size limit — returns an error or truncated result
- Scanned PDF with no text layer returns little or no text
- URL is not publicly accessible or returns a non-200 status — fetch failure
- URL does not point to a valid PDF — parsing error
- max_chars or max_pages parameters out of allowed range (1000–500000 and 1–200 respectively)
- Network timeout fetching the remote PDF

## How this service works

Extract the text of a PDF at a public URL, page by page, with its title, author and page count. Up to 10 MB; scanned PDFs without a text layer return little text.

## Output

A JSON object containing the extracted text split by page (each with page number and text), the document title, total page count, number of pages returned, and total character count. Scanned PDFs without an embedded text layer will return minimal or empty text.

## 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"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "description": "https URL of the PDF"
      },
      "max_chars": {
       "type": "integer",
       "description": "characters to return in all (1000-500000, default 100000)"
      },
      "max_pages": {
       "type": "integer",
       "description": "pages to return (1-200, default 50)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "chars": {},
      "pages": {},
      "title": {},
      "pages_total": {},
      "pages_returned": {}
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "chars": 14,
  "pages": [
   {
    "page": 1,
    "text": "Dummy PDF file"
   }
  ],
  "title": null,
  "pages_total": 1,
  "pages_returned": 1
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-web-tools-pdf-text-extractor-4e9dbe8f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from web.kagurazaka.dev](https://www.zero.xyz/host/web.kagurazaka.dev/llms.txt)
