Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft Edge More info about Internet Explorer and Microsoft Edge
microsoft-foundry.rest.security.o-auth2-auth

Batch

Cancel a batch

POST /openai/v1/batches/{batch_id}/cancel

Cancels a batch by its identifier.

Path parameters

batch_id string required

The ID of the batch to cancel.

Responses

The request has succeeded.

Body

Content-Type: application/json
id string required
object enum required

The object type, which is always batch.

batch
endpoint string required

The OpenAI API endpoint used by the batch.

model string

Model ID used to process the batch, like gpt-6-astra. OpenAI offers a wide range of models with different capabilities, performance characteristics, and price points. Refer to the model guide to browse and compare available models.

errors OpenAI.BatchErrors | null
object string
data OpenAI.BatchError[]
input_file_id string required

The ID of the input file for the batch.

completion_window string required

The time frame within which the batch should be processed.

status enum required

The current status of the batch.

validatingfailedin_progressfinalizingcompletedexpiredcancellingcancelled
output_file_id string | null

The ID of the file containing the outputs of successfully executed requests.

error_file_id string | null

The ID of the file containing the outputs of requests with errors.

created_at integer required

The Unix timestamp (in seconds) for when the batch was created.

in_progress_at integer | null

The Unix timestamp (in seconds) for when the batch started processing.

expires_at integer | null

The Unix timestamp (in seconds) for when the batch will expire.

finalizing_at integer | null

The Unix timestamp (in seconds) for when the batch started finalizing.

completed_at integer | null

The Unix timestamp (in seconds) for when the batch was completed.

failed_at integer | null

The Unix timestamp (in seconds) for when the batch failed.

expired_at integer | null

The Unix timestamp (in seconds) for when the batch expired.

cancelling_at integer | null

The Unix timestamp (in seconds) for when the batch started cancelling.

cancelled_at integer | null

The Unix timestamp (in seconds) for when the batch was cancelled.

request_counts OpenAI.BatchRequestCounts

The request counts for different statuses within the batch.

total integer required
completed integer required
failed integer required
usage OpenAI.BatchUsage
input_tokens integer required
input_tokens_details OpenAI.BatchUsageInputTokensDetails required
cached_tokens integer required
output_tokens integer required
output_tokens_details OpenAI.BatchUsageOutputTokensDetails required
reasoning_tokens integer required
total_tokens integer required
metadata OpenAI.Metadata | null

Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.

[key: string] string

Client error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]
additionalInfo object
debugInfo object

Server error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]
additionalInfo object
debugInfo object

Request

curl https://api.openai.com/v1/batches/batch_abc123/cancel \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -X POST
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get("OPENAI_API_KEY"),  # This is the default and can be omitted
)
batch = client.batches.cancel(
    "batch_id",
)
print(batch.id)
import OpenAI from "openai";

const openai = new OpenAI();

async function main() {
  const batch = await openai.batches.cancel("batch_abc123");

  console.log(batch);
}

main();
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env['OPENAI_API_KEY'], // This is the default and can be omitted
});

const batch = await client.batches.cancel('batch_id');

console.log(batch.id);
package main

import (
    "context"
    "fmt"

    "github.com/openai/openai-go"
    "github.com/openai/openai-go/option"
)

func main() {
    client := openai.NewClient(
        option.WithAPIKey("My API Key"),
    )
    batch, err := client.Batches.Cancel(context.TODO(), "batch_id")
    if err != nil {
        panic(err.Error())
    }
    fmt.Printf("%+v
", batch.ID)
}
package com.openai.example;

import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.batches.Batch;
import com.openai.models.batches.BatchCancelParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        Batch batch = client.batches().cancel("batch_id");
    }
}
require "openai"

openai = OpenAI::Client.new(api_key: "My API Key")

batch = openai.batches.cancel("batch_id")

puts(batch)

Response

{
  "id": "batch_abc123",
  "object": "batch",
  "endpoint": "/v1/chat/completions",
  "errors": null,
  "input_file_id": "file-abc123",
  "completion_window": "24h",
  "status": "cancelling",
  "output_file_id": null,
  "error_file_id": null,
  "created_at": 1711471533,
  "in_progress_at": 1711471538,
  "expires_at": 1711557933,
  "finalizing_at": null,
  "completed_at": null,
  "failed_at": null,
  "expired_at": null,
  "cancelling_at": 1711475133,
  "cancelled_at": null,
  "request_counts": {
    "total": 100,
    "completed": 23,
    "failed": 1
  },
  "metadata": {
    "customer_id": "user_123456789",
    "batch_description": "Nightly eval job",
  }
}
en-us
Your Privacy Choices
  • AI Disclaimer
  • Previous Versions
  • Blog
  • Contribute
  • Privacy
  • Consumer Health Privacy
  • Terms of Use
  • Trademarks
  • © Microsoft 2026