Skip to main content
This page catalogs the renderings parsing returns, the capabilities it recovers, the inputs it accepts, and the endpoints that drive it. For step-by-step usage, see the tutorial and the how-to guides.

Renderings

Markdown and annotated Markdown come from the result endpoint, GET /documents/{job_id}/result, selected with the format query parameter, which defaults to markdown. The strongly-typed structured result has its own endpoint, GET /documents/{job_id}/structured. The format=json value returns an earlier flat JSON rendering; the structured result is the typed, richer replacement for programmatic use. Guidance on choosing is in choosing an output format. The fields are documented in the output schema.

Capability matrix

Each row names a capability parsing recovers, along with the part of the result where it surfaces.

Inputs

Mixed PDFs, where some pages carry a text layer and others are scanned, are decided page by page in a single pass. See parsing scanned documents.

Job statuses

A job reported by GET /documents/{job_id} moves through these statuses. Poll until the status reaches completed or failed. A 2-second interval suits most documents.

Child documents

A container file expands into one child document per file it holds, and each child is parsed independently. GET /documents/{job_id}/children lists them. Each entry reports: Fetch a child’s result with its own job_id, the same way as any other job.
Container extraction applies safety limits against malicious archives, including caps on the number of files, the total decompressed size, and the nesting depth.

Endpoints

The synchronous endpoint suits small files, roughly under 10 MB. For larger documents, submit asynchronously and poll, or stream the trace for progress.
Full request and response detail for each endpoint is in the Documents API reference.

Output schema

Field-by-field detail of the structured result.

How parsing works

The stages behind these capabilities.