Create Request
Submit an inference request for a supported document with up to 2,000 pages. Upon receiving the request, the API immediately returns a Request ID. The input file is divided into batches of 10 pages each, and inference is performed on each batch.
Retrieve Results
Retrieve inference results by request ID and check the status of each batch in real-time.
How to get your parsed results:
- Poll this endpoint until the top-level
statusiscompleted(or track eachbatches[].statusindividually). - For each completed batch, download its result from
batches[].download_url. - Each download is a JSON object in the same format as the synchronous Document Parse response β
elements,content(html/markdown/text),coordinates,usage, and so on β covering the pages from that batch'sstart_pagetoend_page. - Concatenate the batches in
idorder to reconstruct the full document.
Each download_url is a pre-signed link valid for 15 minutes; re-fetch this endpoint to obtain fresh URLs. Results remain available for 30 days from the time of the request.
List Requests
Retrieve a list of all your document parsing async requests with their status and timestamps.
Delete Inference Results
Permanently delete a request's inference results. Any download_url issued earlier stops working.
Only finished requests can be deleted. A request that is still processing is rejected with request_in_progress β retry once it completes.
Deleting an already deleted request succeeds again, so the call is safe to retry.
Delete a single request
Delete multiple requests
Send up to 100 request IDs in one call. Duplicate IDs are collapsed, so the results array can be shorter than the list you sent.
Deletion cannot be undone. Download the results you need before deleting.
The bulk endpoint returns 200 whenever the call itself is valid β even if every request ID failed. Check results[].deleted rather than relying on the HTTP status alone. Problems with the call itself, such as sending more than 100 IDs or an empty list, return 4xx.
Handling Errors
In Document Parse Async APIs, errors can occur in three different scenarios: