# HTML Table Extractor

> HTML Table Extractor is a paid API for AI agents from anibalb.duckdns.org, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-31).

Extracts all HTML tables from a given URL and returns them as structured JSON with headers and rows

## Facts

- Endpoint: GET https://anibalb.duckdns.org/x402/html-table-extract?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/html-table-extractor-dd28d8e4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_XyZbvz4nR39OuQ5SBZm3V

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 html-table-extractor-dd28d8e4
```

Example prompt: Can you extract all the tables from this webpage — https://en.wikipedia.org/wiki/List_of_countries_by_GDP — and give me the data as structured rows and headers?

## When to prefer this

Use this endpoint when you need to quickly extract structured tabular data from a public webpage without writing a custom scraper. Ideal for one-off data pulls from Wikipedia, financial reports, sports statistics, government data portals, or any site with static HTML tables. Prefer this over generic web scraping when the target data is clearly table-structured. The pay-per-call model at $0.002 USDC with no API key setup makes it ideal for low-friction, ad-hoc use by AI agents.

## Known failure modes

- URL is unreachable or returns a non-200 HTTP status — empty tables array or error response
- Target page has no HTML tables — returns empty tables array
- Tables are dynamically rendered via JavaScript and not present in static HTML — will not be captured
- Malformed or deeply nested HTML tables may parse incorrectly or incompletely
- Payment failure via x402 protocol — 402 response if USDC payment is not completed

## How this service works

Public data and utility APIs paid per call in USDC on Base (x402). No accounts, no API keys. 174 routes: crypto/equity data, onchain reads, DNS/email/security intel, geo/weather, x402 payment diagnostics, dev utilities and more.

## Output

A JSON object containing an array of tables, each with a 'headers' array of column names and a 'rows' array of arrays containing the cell values from the HTML table.

## 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",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "tables": [
   {
    "rows": [
     [
      "1",
      "2"
     ]
    ],
    "headers": [
     "A",
     "B"
    ]
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/html-table-extractor-dd28d8e4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from anibalb.duckdns.org](https://www.zero.xyz/host/anibalb.duckdns.org/llms.txt)
