Tables
Extract tables from a previously completed extraction. Processes the extraction’s document content and returns structured table data.
Requires the tables_endpoint feature flag to be enabled for your
organization.
Set async: true to return immediately with a tables_id for
polling via GET /job/{tables_id}.
To extract tables from many extractions at once, see Batch Tables or the Batch Processing guide.
Overview
/tables endpoint detects and reconstructs tables from your document, handling:
- Span tables — cells that merge across rows or columns (e.g., “Year Ended December 31” spanning three columns)
- Multi-level header hierarchies — nested spans like period → segment → line item
- Cross-page tables — tables that continue across page breaks, automatically merged with row-continuity tracking
/extract with storage enabled, which is the default).Async Mode
Setasync: true to return immediately with a job ID for polling. See Polling for Results for details.
Request
Request Body
Tables Config (tables_config)
Response
Synchronous Response (200)
Async Response (200)
Example Usage
Basic Table Extraction
With Cross-Page Table Merging
With Chart-to-Table Conversion
Convert figures and charts into structured tables using LLM processing. Chart-derived tables are marked withfrom_chart: true in the response.
Async Processing
Error Responses
When to Use Tables vs. Basic Extraction
Basic extraction via/extract already returns tables in the markdown output. Use the /tables endpoint when you need:
- Span-aware table parsing — correct handling of merged cells, multi-level headers, and column/row spans
- Cross-page table merging — tables that continue across page breaks reconstructed into a single table
- Financial document accuracy — SEC filings, annual reports, and other documents where misaligned columns mean wrong data
- Dedicated table output — clean HTML tables with citation tracking, separated from the rest of the document content
Authorizations
Body
Input for the /tables endpoint.
ID of a completed extraction to extract tables from.
Table extraction configuration. If omitted, defaults are used (merge: false, table_format: "html").
When true, returns immediately with a job ID. Poll GET /job/{tables_id} for the result.