Crear un lote de mensajes
POST/v1/messages/batches
Envía un lote de solicitudes de creación de mensajes.
La API de Message Batches puede usarse para procesar múltiples solicitudes de la API de Messages a la vez. Una vez creado un lote de mensajes, comienza a procesarse de inmediato. Los lotes pueden tardar hasta 24 horas en completarse.
Obtén más información sobre la API de Message Batches en nuestra guía de usuario
Parameters
Returns
Crear un lote de mensajes
BatchCreateParams parameters = new()
{
Requests =
[
new()
{
CustomID = "my-custom-id-1",
Params = new()
{
MaxTokens = 1024,
Messages =
[
new()
{
Content = "Hello, world",
Role = Role.User,
ClearAt = ClearAt.NextUserMessage,
OutputConfig = new() { Effort = Effort.Low },
},
],
Model = Model.ClaudeOpus5,
CacheControl = new() { Ttl = Ttl.Ttl5m },
Compaction = new() { Instructions = "instructions" },
Container = new BetaContainerParams()
{
ID = "id",
Skills =
[
new()
{
SkillID = "pdf",
Type = Type.Anthropic,
Version = "latest",
},
],
},
ContextManagement = new()
{
Edits =
[
new BetaClearToolUses20250919Edit()
{
ClearAtLeast = new(0),
ClearToolInputs = true,
ExcludeTools =
[
"string"
],
Keep = new(0),
Trigger = new BetaInputTokensTrigger(1),
},
],
},
Diagnostics = new()
{
PreviousMessageID = "previous_message_id"
},
FallbackCreditToken = "x",
Fallbacks = new Default(),
InferenceGeo = "inference_geo",
McpServers =
[
new()
{
Name = "name",
Url = "url",
AuthorizationToken = "authorization_token",
ToolConfiguration = new()
{
AllowedTools =
[
"string"
],
Enabled = true,
},
},
],
Metadata = new()
{
UserID = "13803d75-b4b5-4c3e-b2a2-6f21399b021b"
},
OutputConfig = new()
{
Effort = Effort.Low,
Format = new()
{
Schema = new Dictionary<string, JsonElement>()
{
{ "foo", JsonSerializer.SerializeToElement("bar") }
},
},
TaskBudget = new()
{
Total = 1024,
Remaining = 0,
},
},
OutputFormat = new()
{
Schema = new Dictionary<string, JsonElement>()
{
{ "foo", JsonSerializer.SerializeToElement("bar") }
},
},
ServiceTier = ServiceTier.Auto,
Speed = Speed.Standard,
StopSequences =
[
"string"
],
Stream = false,
System = new(
[
new BetaTextBlockParam()
{
Text = "Today's date is 2024-06-01.",
CacheControl = new() { Ttl = Ttl.Ttl5m },
Citations =
[
new BetaCitationCharLocationParam()
{
CitedText = "The grass is green. The sky is blue.",
DocumentIndex = 0,
DocumentTitle = "x",
EndCharIndex = 0,
StartCharIndex = 0,
},
],
},
]
),
Temperature = 1,
Thinking = new BetaThinkingConfigAdaptive()
{
BlockBinding = new()
{
PrefixMismatchBehavior = BetaThinkingPrefixMismatchBehavior.Error,
},
Display = Display.Summarized,
},
ToolChoice = new BetaToolChoiceAuto()
{
DisableParallelToolUse = true
},
Tools =
[
new BetaTool()
{
InputSchema = new()
{
Properties = new Dictionary<string, JsonElement>()
{
{ "location", JsonSerializer.SerializeToElement("bar") },
{ "unit", JsonSerializer.SerializeToElement("bar") },
},
Required =
[
"location"
],
},
Name = "name",
AllowedCallers =
[
AllowedCaller.Direct
],
CacheControl = new() { Ttl = Ttl.Ttl5m },
DeferLoading = true,
Description = "Get the current weather in a given location",
EagerInputStreaming = true,
InputExamples =
[
new Dictionary<string, JsonElement>()
{
{ "foo", JsonSerializer.SerializeToElement("bar") },
},
],
Strict = true,
Type = Type.Custom,
},
],
TopK = 5,
TopP = 0.7,
},
},
],
};
var betaMessageBatch = await client.Beta.Messages.Batches.Create(parameters);
Console.WriteLine(betaMessageBatch);Response 200
{
"id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
"archived_at": "2024-08-20T18:37:24.100435Z",
"cancel_initiated_at": "2024-08-20T18:37:24.100435Z",
"created_at": "2024-08-20T18:37:24.100435Z",
"ended_at": "2024-08-20T18:37:24.100435Z",
"expires_at": "2024-08-20T18:37:24.100435Z",
"processing_status": "in_progress",
"request_counts": {
"canceled": 10,
"errored": 30,
"expired": 10,
"processing": 100,
"succeeded": 50
},
"results_url": "https://api.anthropic.com/v1/messages/batches/msgbatch_013Zva2CMHLNnXjNJJKqJ2EF/results",
"type": "message_batch"
}Returns Examples
Response 200
{
"id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
"archived_at": "2024-08-20T18:37:24.100435Z",
"cancel_initiated_at": "2024-08-20T18:37:24.100435Z",
"created_at": "2024-08-20T18:37:24.100435Z",
"ended_at": "2024-08-20T18:37:24.100435Z",
"expires_at": "2024-08-20T18:37:24.100435Z",
"processing_status": "in_progress",
"request_counts": {
"canceled": 10,
"errored": 30,
"expired": 10,
"processing": 100,
"succeeded": 50
},
"results_url": "https://api.anthropic.com/v1/messages/batches/msgbatch_013Zva2CMHLNnXjNJJKqJ2EF/results",
"type": "message_batch"
}