Claude Platform Docs

Batches

Create a Message Batch
messages.batches.create(**kwargs) -> MessageBatch
POST/v1/messages/batches
Retrieve a Message Batch
messages.batches.retrieve(message_batch_id) -> MessageBatch
GET/v1/messages/batches/{message_batch_id}
List Message Batches
messages.batches.list(**kwargs) -> Page<MessageBatch>
GET/v1/messages/batches
Cancel a Message Batch
messages.batches.cancel(message_batch_id) -> MessageBatch
POST/v1/messages/batches/{message_batch_id}/cancel
Delete a Message Batch
messages.batches.delete(message_batch_id) -> DeletedMessageBatch
DELETE/v1/messages/batches/{message_batch_id}
Retrieve Message Batch results
messages.batches.results(message_batch_id) -> MessageBatchIndividualResponse
GET/v1/messages/batches/{message_batch_id}/results
Models
class DeletedMessageBatch { id, type }
id: String

ID of the Message Batch.

type: :message_batch_deleted

Deleted object type.

For Message Batches, this is always "message_batch_deleted".

class MessageBatch { id, archived_at, cancel_initiated_at, 7 more }
class MessageBatchCanceledResult { type }
type: :canceled
class MessageBatchErroredResult { error, type }
error: ErrorResponse { error, request_id, type }
One of the following:
request_id: String
type: :error
type: :errored
class MessageBatchExpiredResult { type }
type: :expired
class MessageBatchIndividualResponse { custom_id, result }

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

custom_id: String

Developer-provided ID created for each request in a Message Batch. Useful for matching results to requests, as results may be given out of request order.

Must be unique for each request within the Message Batch.

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.

One of the following:
class MessageBatchRequestCounts { canceled, errored, expired, 2 more }
canceled: Integer

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

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

errored: Integer

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

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

expired: Integer

Number of requests in the Message Batch that have expired.

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

processing: Integer

Number of requests in the Message Batch that are processing.

succeeded: Integer

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

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

MessageBatchResult = MessageBatchSucceededResult { message, type } | MessageBatchErroredResult { error, type } | MessageBatchCanceledResult { type } | MessageBatchExpiredResult { type }

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.

One of the following:
class MessageBatchSucceededResult { message, type }
message: Message { id, container, content, 7 more }
type: :succeeded