Créer un lot de messages
POST/v1/messages/batches
Envoyez un lot de requêtes de création de messages.
L'API Message Batches peut être utilisée pour traiter plusieurs requêtes de l'API Messages en une seule fois. Une fois qu'un lot de messages est créé, son traitement commence immédiatement. Le traitement des lots peut prendre jusqu'à 24 heures.
Pour en savoir plus sur l'API Message Batches, consultez notre guide de l'utilisateur.
Parameters
Returns
Créer un lot de messages
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"
}