# ISHOB PDF & HTML Table Extractor

> ISHOB PDF & HTML Table Extractor is a paid API for AI agents from api.ishob.com, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-14).

Extracts tables from a public PDF (up to 30 pages, 10 MB) or HTML page as structured JSON with headers and keyed records

## Facts

- Endpoint: POST https://api.ishob.com/v1/pdf-tables?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ishob-pdf-html-table-extractor-102571d6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_eZrZwykOuuWtoQwE1zReV

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 ishob-pdf-html-table-extractor-102571d6 -d '<json body>'
```

Example prompt: Can you extract all the tables from this PDF as structured JSON? Here's the URL: https://example.gov/annual-report-2024.pdf — just pull pages 1-5.

## When to prefer this

Choose this endpoint when you need structured, machine-readable JSON from tables embedded in public PDFs or HTML pages, especially when tables have complex structures like multi-column layouts, ruled lines, or merged cells (colspan/rowspan). It is ideal for programmatic data extraction workflows where you need column-keyed records ready for analysis, without needing OCR (text-based PDFs only). Prefer it over general web-scraping tools when the target is specifically tabular data and you want clean header/record decomposition rather than raw HTML or markdown.

## Known failure modes

- PDF exceeds 10 MB or 30 pages — request rejected
- URL is not publicly accessible or robots.txt disallows crawling — error returned
- PDF uses scanned images requiring OCR — not supported, no text extracted
- Malformed or password-protected PDF — parsing fails
- HTML page has no detectable table structure — empty tables array returned
- Invalid or unreachable URL — HTTP error propagated
- Page range string is malformed (e.g. non-numeric characters) — validation error

## How this service works

Extract tables as structured JSON (rows, header, records keyed by column) from a public PDF (multi-column / ruled tables, up to 30 pages, 10 MB) or an HTML page (colspan/rowspan expanded). robots.txt respected; nothing stored. No OCR.

## Output

Returns a JSON object with a 'kind' field ('pdf' or 'html'), and a 'tables' array. Each table includes the page number (for PDFs), an array of column headers, row and column counts, and a 'records' array where each record is a dictionary keyed by column header with the corresponding cell values. Colspan/rowspan in HTML tables are expanded into discrete cells.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "format": "uri",
   "maxLength": 2048,
   "description": "Public URL of a PDF or HTML page"
  },
  "pages": {
   "type": "string",
   "maxLength": 64,
   "description": "PDF pages, e.g. '1-3,7' (default: first 30)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "kind": "pdf",
  "tables": [
   {
    "page": 1,
    "header": [
     "Model",
     "Range",
     "Accuracy"
    ],
    "n_cols": 3,
    "n_rows": 3,
    "records": [
     {
      "Model": "TS-100",
      "Range": "0-50 Nm",
      "Accuracy": "0.1 %"
     }
    ]
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ishob-pdf-html-table-extractor-102571d6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.ishob.com](https://www.zero.xyz/host/api.ishob.com/llms.txt)
