Submit up to **1,000 files** for parsing in a single request. Each file is processed as an independent parse run using the same configuration.
Unlike the single [Parse File (Async)](https://docs.extend.ai/2026-02-09/developers/api-reference/endpoints/parse/create-parse-run) endpoint, this batch endpoint accepts an `inputs` array and immediately returns a `BatchRun` object containing a batch `id` and a `PENDING` status. The individual runs are then queued and processed asynchronously.
**Monitoring results:**
- **Webhooks (recommended):** Subscribe to `batch_parse_run.processed` and `batch_parse_run.failed` events. The webhook payload indicates the batch has finished β fetch individual run results using `GET /parse_runs?batchId={id}`.
- **Polling:** Call `GET /batch_runs/{id}` to check the overall batch status, and use `GET /parse_runs?batchId={id}` to retrieve individual run results.
**Notes:**
- `inputs` must contain between 1 and 1,000 items.
- File input supports URLs, Extend file IDs, and raw text strings.
Authentication
AuthorizationBearer
Bearer authentication of the form Bearer <token>, where token is your auth token.
Headers
x-extend-api-version"2026-02-09"Optional
API version to use for the request. If you're using an SDK, you can ignore this parameter. If you are not using an SDK and do not specify a version, you will either receive a `400 Bad Request` or be set to a previous legacy version. See [API Versioning](https://docs.extend.ai/2026-02-09/developers/api-versioning) for more details.
Request
This endpoint expects an object.
inputslist of objectsRequired
An array of inputs to parse. Each item produces one parse run. Must contain between 1 and 1,000 items.
configobjectOptional
Optional parsing configuration applied to every run in this batch. If omitted, default parse settings are used.
priorityintegerOptional1-100Defaults to 50
An optional value used to determine the relative order of runs when rate limiting is in effect. Lower values will be prioritized before higher values.
Response
Successfully queued batch parse run
objectenum
The type of object. Always "batch_run".
Allowed values:
idstring
The unique identifier for this batch run.
Example: "bpr_Xj8mK2pL9nR4vT7qY5wZ"
statusenum
The status of a batch run:
"PENDING" - The batch has been created and is waiting to be processed
"PROCESSING" - The batch is currently being processed
"PROCESSED" - All runs in the batch have completed successfully
"FAILED" - The batch failed to process
"CANCELLED" - The batch was cancelled
Allowed values:
runCountinteger
The number of individual runs in this batch.
createdAtstringformat: "date-time"
The time (in UTC) at which the object was created. Will follow the RFC 3339 format.
Example: "2024-03-21T16:45:00Z"
Errors
400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
422
Unprocessable Entity Error
429
Too Many Requests Error
500
Internal Server Error
π We just launched API version v2026-02-09! π Learn more
Submit up to 1,000 files for parsing in a single request. Each file is processed as an independent parse run using the same configuration.
Unlike the single Parse File (Async) endpoint, this batch endpoint accepts an inputs array and immediately returns a BatchRun object containing a batch id and a PENDING status. The individual runs are then queued and processed asynchronously.
Monitoring results:
Webhooks (recommended): Subscribe to batch_parse_run.processed and batch_parse_run.failed events. The webhook payload indicates the batch has finished β fetch individual run results using GET /parse_runs?batchId={id}.
Polling: Call GET /batch_runs/{id} to check the overall batch status, and use GET /parse_runs?batchId={id} to retrieve individual run results.
Notes:
inputs must contain between 1 and 1,000 items.
File input supports URLs, Extend file IDs, and raw text strings.
API version to use for the request. If youβre using an SDK, you can ignore this parameter. If you are not using an SDK and do not specify a version, you will either receive a 400 Bad Request or be set to a previous legacy version. See API Versioning for more details.