# hustler-extract PDF-to-Markdown Conversion API

> hustler-extract PDF-to-Markdown Conversion API is a paid API for AI agents from x402-extract-service.onrender.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-17).

Converts a PDF (via public URL or base64 payload) into clean, structured Markdown text, returning full page content, word count, and metadata.

## Facts

- Endpoint: POST https://x402-extract-service.onrender.com/docdown
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/hustler-extract-pdf-to-markdown-conversion-api-95965d78
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_u6uUydzlpsmP7B42M7_Wv

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 hustler-extract-pdf-to-markdown-conversion-api-95965d78 -d '<json body>'
```

Example prompt: Can you convert this PDF report into clean markdown text for me? Here's the URL: https://example.com/annual-report-2024.pdf

## When to prefer this

Choose this endpoint when you need to convert a publicly hosted PDF or a small base64-encoded PDF into clean Markdown text for downstream text processing, LLM ingestion, or search indexing. It is well-suited for agent pipelines that need to read PDF content programmatically. Prefer it over general web-scraping endpoints when the target document is a PDF, and over local PDF parsers when you want a hosted, per-call micropayment API with no infrastructure overhead.

## Known failure modes

- Invalid or inaccessible URL returns an error with ok:false
- PDF is password-protected and cannot be parsed
- Very large PDFs may be truncated (truncated:true in response)
- Base64 payload malformed or too large causes a 400 error
- Network timeout fetching remote PDF URL
- Non-PDF content at the given URL returns a parsing error

## How this service works

URL-to-clean-markdown extraction API, on-demand broken-link scan API, pre-deploy link audit API, DNS health audit API, llms.txt / AI-crawler audit API, spec-linted llms.txt audit API, email-deliverability (SPF/DKIM/DMARC) audit API, PDF-to-markdown conversion API, technology-stack fingerprinting API, security-headers audit API, and PDF metadata-intel API for coding agents. Paid per call in USDC via x402 on Base.

## Output

Returns a JSON object with ok (success flag), pages (total page count), source (the input URL), markdown (full extracted text in Markdown format), charCount, wordCount, pagesExtracted, checkedAt (ISO timestamp), truncated (whether content was cut), and pricePaidAtomic (USDC microcents paid).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "format": "uri",
   "description": "Public http(s) URL of the PDF to convert."
  },
  "pdfBase64": {
   "type": "string",
   "description": "Base64-encoded PDF (alternative to url for small files). Or POST multipart/form-data with a \"pdf\" file field."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "pages": 12,
  "source": "https://example.com/report.pdf",
  "markdown": "# https://example.com/report.pdf\n\nFirst page text...",
  "charCount": 21000,
  "checkedAt": "2026-09-13T00:00:00.000Z",
  "truncated": false,
  "wordCount": 3200,
  "pagesExtracted": 12,
  "pricePaidAtomic": "10000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/hustler-extract-pdf-to-markdown-conversion-api-95965d78/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-extract-service.onrender.com](https://www.zero.xyz/host/x402-extract-service.onrender.com/llms.txt)
