For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Creates and starts an extract job from files or pre-uploaded handles. Extract pulls structured fields out of documents according to a schema.
**Input:** Exactly one of `file` and `upload_ids` must be provided.
**Schema:** exactly one of `schema` (inline JSON schema) and `config_id` (saved extraction configuration) is required.
**Processing:** the job runs asynchronously. Poll `GET /doc-ai/v1/job/{job_id}/status` until a terminal status (`completed`, `partially_completed`, `failed`, `rejected`), then fetch output via the results or download-url endpoints.
Extract results include `result`, plus `annotations` mirroring the result shape where every leaf has `confidence` and `sources`.
Authentication
api-subscription-keystring
API Key authentication via header
Request
This endpoint expects a multipart form with multiple files.
filefilesOptional
Document file(s) to extract from. Repeatable multipart part. Exactly one of file and upload_ids must be provided.
upload_idsstringOptional
Comma-separated upload IDs returned by POST /doc-ai/v1/job/upload. Exactly one of file and upload_ids must be provided.
schemastringOptional
Inline extraction schema as a JSON string. The root must be `type: "object"` with non-empty `properties`; every field needs a `type` and a non-empty `description`. Supported types: `string`, `number`, `integer`, `boolean`, `object`, `array` (objects need `properties`, arrays need `items`); optional `enum`; maximum nesting depth 4. Exactly one of `schema` and `config_id` is required.
config_idstringOptional
Saved extraction configuration ID. Exactly one of schema and config_id is required.
languagestringOptionalDefaults to en-IN
Language code of the document (BCP-47), e.g. en-IN, hi-IN.
output_formatenumOptionalDefaults to json
Output format of the extraction results.
Allowed values:
classificationstringOptionalDefaults to false
Enable document classification. Boolean sent as text: true or false.
auto_orientstringOptionalDefaults to true
Automatically correct page orientation before processing. Boolean sent as text: true or false.
modelstringOptionalDefaults to sarvam-vision-v1
Model to use for extraction.
Response
Created
job_idstring
The unique identifier of the job.
statusstring
Current status of the job.
run_idstring
The unique identifier of the job run.
Errors
400
Bad Request Error
402
Payment Required Error
403
Forbidden Error
413
Content Too Large Error
429
Too Many Requests Error
503
Service Unavailable Error
Creates and starts an extract job from files or pre-uploaded handles. Extract pulls structured fields out of documents according to a schema.
Input: Exactly one of file and upload_ids must be provided.
Schema: exactly one of schema (inline JSON schema) and config_id (saved extraction configuration) is required.
Processing: the job runs asynchronously. Poll GET /doc-ai/v1/job/{job_id}/status until a terminal status (completed, partially_completed, failed, rejected), then fetch output via the results or download-url endpoints.
Extract results include result, plus annotations mirroring the result shape where every leaf has confidence and sources.
Inline extraction schema as a JSON string. The root must be type: "object" with non-empty properties; every field needs a type and a non-empty description. Supported types: string, number, integer, boolean, object, array (objects need properties, arrays need items); optional enum; maximum nesting depth 4. Exactly one of schema and config_id is required.