task_id immediately, which you then poll until ingestion completes.
Upload Document
Upload a single file for parsing and indexing.Endpoint
POST /api/v1/ingest
Request Body
multipart/form-data
The document to upload. Supported formats: PDF, DOCX, PPTX, XLSX, TXT, MD, and more.
Display name in your workspace. Defaults to the filename if omitted.
Assign the document to a group on upload.
Response
Unique identifier for the uploaded document
Ingestion task identifier — use this to poll for status
Initial status: always
pendingExample
cURL
Upload Multiple Documents
Upload several files in a single request. Each file is queued as an independent ingestion task.Endpoint
POST /api/v1/ingest/batch
Request Body
multipart/form-data
One or more files to upload (repeat the
files field for each file).Display names for each file in the same order as
files. If omitted, filenames are used.Assign all uploaded documents to this group.
Response
One entry per file, in the same order as
files.Example
Check Ingestion Status
Poll a parse task started by either upload endpoint.Endpoint
GET /api/v1/ingest/{task_id}
Path Parameters
The task identifier returned by
POST /api/v1/ingest or POST /api/v1/ingest/batchResponse
Task identifier
Document identifier
Processing status (see table below)
Error message if status is
failed, otherwise nullstatus value | Meaning |
|---|---|
pending | Queued, not yet started |
parsing | Being parsed and indexed |
completed | Ready to query |
failed | Parsing failed; see error field |
Example
cURL
