Claude Platform Docs

Batches

Create a Message Batch
$ ant messages:batches create
POST/v1/messages/batches

Send a batch of Message creation requests.

Retrieve a Message Batch
$ ant messages:batches retrieve
GET/v1/messages/batches/{message_batch_id}

This endpoint is idempotent and can be used to poll for Message Batch completion. To access the results of a Message Batch, make a request to the results_url field in the response.

List Message Batches
$ ant messages:batches list
GET/v1/messages/batches

List all Message Batches within a Workspace. Most recently created batches are returned first.

Cancel a Message Batch
$ ant messages:batches cancel
POST/v1/messages/batches/{message_batch_id}/cancel

Batches may be canceled any time before processing ends. Once cancellation is initiated, the batch enters a canceling state, at which time the system may complete any in-progress, non-interruptible requests before finalizing cancellation.

Delete a Message Batch
$ ant messages:batches delete
DELETE/v1/messages/batches/{message_batch_id}
Retrieve Message Batch results
$ ant messages:batches results
GET/v1/messages/batches/{message_batch_id}/results

Streams the results of a Message Batch as a .jsonl file.

Models
deleted_message_batch: object{ type: "message_batch_deleted", id }
type: "message_batch_deleted"

Deleted object type.

For Message Batches, this is always "message_batch_deleted".

id: string

ID of the Message Batch.

message_batch: object{ type: "message_batch", id, archived_at, 7 more }
message_batch_canceled_result: object{ type: "canceled" }
type: "canceled"
message_batch_errored_result: object{ type: "errored", error }
message_batch_expired_result: object{ type: "expired" }
type: "expired"
message_batch_individual_response: object{ custom_id, result }

This is a single line in the response .jsonl file and does not represent the response as a whole.

message_batch_request_counts: object{ canceled, errored, expired, 2 more }
canceled: number

Number of requests in the Message Batch that have been canceled.

This is zero until processing of the entire Message Batch has ended.

errored: number

Number of requests in the Message Batch that encountered an error.

This is zero until processing of the entire Message Batch has ended.

expired: number

Number of requests in the Message Batch that have expired.

This is zero until processing of the entire Message Batch has ended.

processing: number

Number of requests in the Message Batch that are processing.

succeeded: number

Number of requests in the Message Batch that have completed successfully.

This is zero until processing of the entire Message Batch has ended.

Processing result for this request.

Contains a Message output if processing was successful, an error response if processing failed, or the reason why processing was not attempted, such as cancellation or expiration.

message_batch_succeeded_result: object{ type: "succeeded", message }