rbi/lib/anthropic/resources/messages/batches.rbi (80 lines of code) (raw):

# typed: strong module Anthropic module Resources class Messages class Batches # Send a batch of Message creation requests. # # The Message Batches API can be used to process multiple Messages API requests at # once. Once a Message Batch is created, it begins processing immediately. Batches # can take up to 24 hours to complete. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( requests: T::Array[T.any(Anthropic::Models::Messages::BatchCreateParams::Request, Anthropic::Internal::AnyHash)], request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Models::Messages::MessageBatch) end def create( # List of requests for prompt completion. Each is an individual request to create # a Message. requests:, request_options: {} ); end # 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. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( message_batch_id: String, request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Models::Messages::MessageBatch) end def retrieve( # ID of the Message Batch. message_batch_id, request_options: {} ); end # List all Message Batches within a Workspace. Most recently created batches are # returned first. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( after_id: String, before_id: String, limit: Integer, request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Internal::Page[Anthropic::Models::Messages::MessageBatch]) end def list( # ID of the object to use as a cursor for pagination. When provided, returns the # page of results immediately after this object. after_id: nil, # ID of the object to use as a cursor for pagination. When provided, returns the # page of results immediately before this object. before_id: nil, # Number of items to return per page. # # Defaults to `20`. Ranges from `1` to `1000`. limit: nil, request_options: {} ); end # Delete a Message Batch. # # Message Batches can only be deleted once they've finished processing. If you'd # like to delete an in-progress batch, you must first cancel it. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( message_batch_id: String, request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Models::Messages::DeletedMessageBatch) end def delete( # ID of the Message Batch. message_batch_id, request_options: {} ); end # 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. # # The number of canceled requests is specified in `request_counts`. To determine # which requests were canceled, check the individual results within the batch. # Note that cancellation may not result in any canceled requests if they were # non-interruptible. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( message_batch_id: String, request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Models::Messages::MessageBatch) end def cancel( # ID of the Message Batch. message_batch_id, request_options: {} ); end # Streams the results of a Message Batch as a `.jsonl` file. # # Each line in the file is a JSON object containing the result of a single request # in the Message Batch. Results are not guaranteed to be in the same order as # requests. Use the `custom_id` field to match results to requests. # # Learn more about the Message Batches API in our # [user guide](/en/docs/build-with-claude/batch-processing) sig do params( message_batch_id: String, request_options: T.nilable(T.any(Anthropic::RequestOptions, Anthropic::Internal::AnyHash)) ) .returns(Anthropic::Internal::JsonLStream[Anthropic::Models::Messages::MessageBatchIndividualResponse]) end def results_streaming( # ID of the Message Batch. message_batch_id, request_options: {} ); end # @api private sig { params(client: Anthropic::Client).returns(T.attached_class) } def self.new(client:); end end end end end