Batch Split Files

Submit up to **1,000 files** for splitting in a single request. Each file is processed as an independent split run using the same splitter and configuration. Unlike the single [Split File (Async)](https://docs.extend.ai/2026-02-09/developers/api-reference/endpoints/split/create-split-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_processor_run.processed` and `batch_processor_run.failed` events. The webhook payload indicates the batch has finished β€” fetch individual run results using `GET /split_runs?batchId={id}`. - **Polling:** Call `GET /batch_runs/{id}` to check the overall batch status, and use `GET /split_runs` filtered by `batchId` to retrieve individual run results. **Notes:** - A processor reference (`splitter.id`) is required β€” inline `config` is not supported for batch requests. - `inputs` must contain between 1 and 1,000 items. - All inputs in a batch use the same splitter version and override config. - Raw text input (`FileFromText`) is not supported for split runs. Use a URL or file ID.

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.
splitterobjectRequired
Reference to the splitter to run against every input in this batch.
inputslist of objectsRequired

An array of inputs to process. Each item produces one split run. Must contain between 1 and 1,000 items. Raw text input is not supported β€” use a URL or file ID.

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 split 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