Parse an uploaded document
Accept a document as multipart/form-data and return chunks.
Mirrors POST /v1/parse in every way except how the document
arrives: same auth, same billing, same response schema, same error
mapping. The filename is advisory; magic bytes drive kind detection.
POST /v1/extract/file is a compatibility alias.
Authorizations
Body
PDF, PPTX, DOCX, or image (PNG, JPEG, WebP, TIFF, HEIC/HEIF, BMP) document.
Include text chunks in the response. Set false to skip text spans; table chunks (and figures, when extract_images is true) are still returned.
Include figure (image) chunks in the response. Set false to skip figure extraction; text and table chunks are still returned.
Deprecated. Accepted for backward compatibility but currently has no effect.
auto, never, force How table chunks are structured. 'markdown' (default) keeps the existing markdown-derived cells; 'html' renders those same cells as an HTML table in page_content, with row 0 emitted as the header row exactly as it is (an empty header stays empty, never promoted from the first body row); 'cell_grid' returns true per-cell bounding boxes on table chunks (cells become the primary representation; page_content remains a markdown render).
markdown, cell_grid, html 'none' (default): response unchanged. 'semantic': additionally return segments — elements grouped toward chunk_size characters at semantic/structural boundaries (headings, gaps, page breaks), each segment carrying embed-ready markdown content plus member records with page numbers and bounding boxes.
none, semantic Target segment size in characters of segment content. Segments land in a +/-25% band around this target (default 750-1250). Only meaningful when chunking is enabled; validated (200-8000) only in that case and ignored otherwise.
false (default): response unchanged. true: additionally return content — the entire parsed document as a single text string, concatenated in reading order (not reformatted as structured markdown).
Response
Successful Response