{"uid":"cap_oT5GVHwBH4OkYVy9IF4VJ","slug":"html-tables-to-json-9410253b","name":"HTML Tables to JSON","description":"HTML tables to JSON: every table on a page as arrays of rows (header row detected, cells cleaned of markup), with row and column counts and a caption. Pull structured data out of any web page. $0.01 per page.","url":"https://intel.rallylive.ca/site/tables","method":"GET","headers":{},"bodySchema":{"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","properties":{}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.01","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_55CWQyrsVwkRZ55Jhot14","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches a web page and converts every HTML table into structured JSON arrays with header detection, cleaned cell content, row/column counts, and captions.","exampleAgentPrompt":"Can you pull all the tables from this page — https://en.wikipedia.org/wiki/List_of_countries_by_GDP — and give me the data as clean JSON arrays with headers detected?","exampleUseCases":[{"title":"Extract sports standings from a league site","prompt":"Grab all the tables from https://www.premierleague.com/tables and convert them to JSON so I can see the current standings with rows and columns cleanly labeled."},{"title":"Scrape financial data from a public report","prompt":"Pull all the tables from this SEC filing page — https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0000320193&type=10-K — and give me the data as structured JSON arrays with headers."},{"title":"Import Wikipedia comparison table into a spreadsheet","prompt":"Extract every table from https://en.wikipedia.org/wiki/Comparison_of_programming_languages and return them as JSON rows so I can load the data into a spreadsheet."}],"resultDescription":"Returns an array of table objects extracted from the page. Each object includes: the table caption (if any), a detected header row, all data rows as arrays of cleaned cell strings, and the total row and column counts. Markup is stripped from cell content so values are plain text.","failureModes":["Page has no HTML tables — returns empty array or zero tables found","Target URL returns a non-200 status — request fails with HTTP error","Page uses JavaScript-rendered tables (dynamic content) — tables may not be present in raw HTML","Malformed HTML may cause some tables to parse incorrectly or be skipped","Very large pages may be truncated at the 500 KB fetch limit","Network timeout or unreachable host returns an error"],"whenToPreferThis":"Choose this endpoint when you need to extract structured tabular data from any public web page without writing a custom scraper. It is ideal for Wikipedia comparison tables, financial data pages, sports standings, government statistics, and any site where data is published in HTML table format. Prefer it over generic HTML fetch when you specifically need row/column structure with headers automatically detected and markup stripped — saving you the need to parse raw HTML yourself.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T13:12:44.125Z","isFirstParty":false}