Batches
Create batch
batches.create(BatchCreateParams**kwargs) -> Batch
post /batches
Create batch
Parameters
-
completion_window: Literal["24h"]The time frame within which the batch should be processed. Currently only
24his supported."24h"
-
endpoint: Literal["/v1/responses", "/v1/chat/completions", "/v1/embeddings", 5 more]The endpoint to be used for all requests in the batch. Currently
/v1/responses,/v1/chat/completions,/v1/embeddings,/v1/completions,/v1/moderations,/v1/images/generations,/v1/images/edits, and/v1/videosare supported. Note that/v1/embeddingsbatches are also restricted to a maximum of 50,000 embedding inputs across all requests in the batch.-
"/v1/responses" -
"/v1/chat/completions" -
"/v1/embeddings" -
"/v1/completions" -
"/v1/moderations" -
"/v1/images/generations" -
"/v1/images/edits" -
"/v1/videos"
-
-
input_file_id: strThe ID of an uploaded file that contains requests for the new batch.
See upload file for how to upload a file.
Your input file must be formatted as a JSONL file, and must be uploaded with the purpose
batch. The file can contain up to 50,000 requests, and can be up to 200 MB in size. -
metadata: Optional[Metadata]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.
-
output_expires_after: Optional[OutputExpiresAfter]The expiration policy for the output and/or error file that are generated for a batch.
-
anchor: Literal["created_at"]Anchor timestamp after which the expiration policy applies. Supported anchors:
created_at. Note that the anchor is the file creation time, not the time the batch is created."created_at"
-
seconds: intThe number of seconds after the anchor time that the file will expire. Must be between 3600 (1 hour) and 2592000 (30 days).
-
Returns
-
class Batch: …-
id: str -
completion_window: strThe time frame within which the batch should be processed.
-
created_at: intThe Unix timestamp (in seconds) for when the batch was created.
-
endpoint: strThe OpenAI API endpoint used by the batch.
-
input_file_id: strThe ID of the input file for the batch.
-
object: Literal["batch"]The object type, which is always
batch."batch"
-
status: Literal["validating", "failed", "in_progress", 5 more]The current status of the batch.
-
"validating" -
"failed" -
"in_progress" -
"finalizing" -
"completed" -
"expired" -
"cancelling" -
"cancelled"
-
-
cancelled_at: Optional[int]The Unix timestamp (in seconds) for when the batch was cancelled.
-
cancelling_at: Optional[int]The Unix timestamp (in seconds) for when the batch started cancelling.
-
completed_at: Optional[int]The Unix timestamp (in seconds) for when the batch was completed.
-
error_file_id: Optional[str]The ID of the file containing the outputs of requests with errors.
-
errors: Optional[Errors]-
data: Optional[List[object]] -
object: Optional[str]The object type, which is always
list.
-
-
expired_at: Optional[int]The Unix timestamp (in seconds) for when the batch expired.
-
expires_at: Optional[int]The Unix timestamp (in seconds) for when the batch will expire.
-
failed_at: Optional[int]The Unix timestamp (in seconds) for when the batch failed.
-
finalizing_at: Optional[int]The Unix timestamp (in seconds) for when the batch started finalizing.
-
in_progress_at: Optional[int]The Unix timestamp (in seconds) for when the batch started processing.
-
metadata: Optional[Metadata]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.
-
model: Optional[str]Model ID used to process the batch, like
gpt-5-2025-08-07. 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. -
output_file_id: Optional[str]The ID of the file containing the outputs of successfully executed requests.
-
request_counts: Optional[object] -
usage: Optional[BatchUsage]Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-
-
Example
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.create(
completion_window="24h",
endpoint="/v1/responses",
input_file_id="input_file_id",
)
print(batch.id)
Response
{
"id": "id",
"completion_window": "completion_window",
"created_at": 0,
"endpoint": "endpoint",
"input_file_id": "input_file_id",
"object": "batch",
"status": "validating",
"cancelled_at": 0,
"cancelling_at": 0,
"completed_at": 0,
"error_file_id": "error_file_id",
"errors": {
"data": [
{}
],
"object": "object"
},
"expired_at": 0,
"expires_at": 0,
"failed_at": 0,
"finalizing_at": 0,
"in_progress_at": 0,
"metadata": {
"foo": "string"
},
"model": "model",
"output_file_id": "output_file_id",
"request_counts": {},
"usage": {
"input_tokens": 0,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 0,
"output_tokens_details": {
"reasoning_tokens": 0
},
"total_tokens": 0
}
}
Example
from openai import OpenAI
client = OpenAI()
client.batches.create(
input_file_id="file-abc123",
endpoint="/v1/chat/completions",
completion_window="24h"
)
Response
{
"id": "batch_abc123",
"object": "batch",
"endpoint": "/v1/chat/completions",
"errors": null,
"input_file_id": "file-abc123",
"completion_window": "24h",
"status": "validating",
"output_file_id": null,
"error_file_id": null,
"created_at": 1711471533,
"in_progress_at": null,
"expires_at": null,
"finalizing_at": null,
"completed_at": null,
"failed_at": null,
"expired_at": null,
"cancelling_at": null,
"cancelled_at": null,
"request_counts": {
"total": 0,
"completed": 0,
"failed": 0
},
"metadata": {
"customer_id": "user_123456789",
"batch_description": "Nightly eval job",
}
}
Retrieve batch
batches.retrieve(strbatch_id) -> Batch
get /batches/{batch_id}
Retrieve batch
Parameters
batch_id: str
Returns
-
class Batch: …-
id: str -
completion_window: strThe time frame within which the batch should be processed.
-
created_at: intThe Unix timestamp (in seconds) for when the batch was created.
-
endpoint: strThe OpenAI API endpoint used by the batch.
-
input_file_id: strThe ID of the input file for the batch.
-
object: Literal["batch"]The object type, which is always
batch."batch"
-
status: Literal["validating", "failed", "in_progress", 5 more]The current status of the batch.
-
"validating" -
"failed" -
"in_progress" -
"finalizing" -
"completed" -
"expired" -
"cancelling" -
"cancelled"
-
-
cancelled_at: Optional[int]The Unix timestamp (in seconds) for when the batch was cancelled.
-
cancelling_at: Optional[int]The Unix timestamp (in seconds) for when the batch started cancelling.
-
completed_at: Optional[int]The Unix timestamp (in seconds) for when the batch was completed.
-
error_file_id: Optional[str]The ID of the file containing the outputs of requests with errors.
-
errors: Optional[Errors]-
data: Optional[List[object]] -
object: Optional[str]The object type, which is always
list.
-
-
expired_at: Optional[int]The Unix timestamp (in seconds) for when the batch expired.
-
expires_at: Optional[int]The Unix timestamp (in seconds) for when the batch will expire.
-
failed_at: Optional[int]The Unix timestamp (in seconds) for when the batch failed.
-
finalizing_at: Optional[int]The Unix timestamp (in seconds) for when the batch started finalizing.
-
in_progress_at: Optional[int]The Unix timestamp (in seconds) for when the batch started processing.
-
metadata: Optional[Metadata]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.
-
model: Optional[str]Model ID used to process the batch, like
gpt-5-2025-08-07. 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. -
output_file_id: Optional[str]The ID of the file containing the outputs of successfully executed requests.
-
request_counts: Optional[object] -
usage: Optional[BatchUsage]Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-
-
Example
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.retrieve(
"batch_id",
)
print(batch.id)
Response
{
"id": "id",
"completion_window": "completion_window",
"created_at": 0,
"endpoint": "endpoint",
"input_file_id": "input_file_id",
"object": "batch",
"status": "validating",
"cancelled_at": 0,
"cancelling_at": 0,
"completed_at": 0,
"error_file_id": "error_file_id",
"errors": {
"data": [
{}
],
"object": "object"
},
"expired_at": 0,
"expires_at": 0,
"failed_at": 0,
"finalizing_at": 0,
"in_progress_at": 0,
"metadata": {
"foo": "string"
},
"model": "model",
"output_file_id": "output_file_id",
"request_counts": {},
"usage": {
"input_tokens": 0,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 0,
"output_tokens_details": {
"reasoning_tokens": 0
},
"total_tokens": 0
}
}
Example
from openai import OpenAI
client = OpenAI()
client.batches.retrieve("batch_abc123")
Response
{
"id": "batch_abc123",
"object": "batch",
"endpoint": "/v1/completions",
"errors": null,
"input_file_id": "file-abc123",
"completion_window": "24h",
"status": "completed",
"output_file_id": "file-cvaTdG",
"error_file_id": "file-HOWS94",
"created_at": 1711471533,
"in_progress_at": 1711471538,
"expires_at": 1711557933,
"finalizing_at": 1711493133,
"completed_at": 1711493163,
"failed_at": null,
"expired_at": null,
"cancelling_at": null,
"cancelled_at": null,
"request_counts": {
"total": 100,
"completed": 95,
"failed": 5
},
"metadata": {
"customer_id": "user_123456789",
"batch_description": "Nightly eval job",
}
}
Cancel batch
batches.cancel(strbatch_id) -> Batch
post /batches/{batch_id}/cancel
Cancel batch
Parameters
batch_id: str
Returns
-
class Batch: …-
id: str -
completion_window: strThe time frame within which the batch should be processed.
-
created_at: intThe Unix timestamp (in seconds) for when the batch was created.
-
endpoint: strThe OpenAI API endpoint used by the batch.
-
input_file_id: strThe ID of the input file for the batch.
-
object: Literal["batch"]The object type, which is always
batch."batch"
-
status: Literal["validating", "failed", "in_progress", 5 more]The current status of the batch.
-
"validating" -
"failed" -
"in_progress" -
"finalizing" -
"completed" -
"expired" -
"cancelling" -
"cancelled"
-
-
cancelled_at: Optional[int]The Unix timestamp (in seconds) for when the batch was cancelled.
-
cancelling_at: Optional[int]The Unix timestamp (in seconds) for when the batch started cancelling.
-
completed_at: Optional[int]The Unix timestamp (in seconds) for when the batch was completed.
-
error_file_id: Optional[str]The ID of the file containing the outputs of requests with errors.
-
errors: Optional[Errors]-
data: Optional[List[object]] -
object: Optional[str]The object type, which is always
list.
-
-
expired_at: Optional[int]The Unix timestamp (in seconds) for when the batch expired.
-
expires_at: Optional[int]The Unix timestamp (in seconds) for when the batch will expire.
-
failed_at: Optional[int]The Unix timestamp (in seconds) for when the batch failed.
-
finalizing_at: Optional[int]The Unix timestamp (in seconds) for when the batch started finalizing.
-
in_progress_at: Optional[int]The Unix timestamp (in seconds) for when the batch started processing.
-
metadata: Optional[Metadata]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.
-
model: Optional[str]Model ID used to process the batch, like
gpt-5-2025-08-07. 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. -
output_file_id: Optional[str]The ID of the file containing the outputs of successfully executed requests.
-
request_counts: Optional[object] -
usage: Optional[BatchUsage]Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-
-
Example
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)
Response
{
"id": "id",
"completion_window": "completion_window",
"created_at": 0,
"endpoint": "endpoint",
"input_file_id": "input_file_id",
"object": "batch",
"status": "validating",
"cancelled_at": 0,
"cancelling_at": 0,
"completed_at": 0,
"error_file_id": "error_file_id",
"errors": {
"data": [
{}
],
"object": "object"
},
"expired_at": 0,
"expires_at": 0,
"failed_at": 0,
"finalizing_at": 0,
"in_progress_at": 0,
"metadata": {
"foo": "string"
},
"model": "model",
"output_file_id": "output_file_id",
"request_counts": {},
"usage": {
"input_tokens": 0,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 0,
"output_tokens_details": {
"reasoning_tokens": 0
},
"total_tokens": 0
}
}
Example
from openai import OpenAI
client = OpenAI()
client.batches.cancel("batch_abc123")
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",
}
}
List batches
batches.list(BatchListParams**kwargs) -> SyncCursorPage[Batch]
get /batches
List batches
Parameters
-
after: Optional[str]A cursor for use in pagination.
afteris an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list. -
limit: Optional[int]A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
Returns
-
class Batch: …-
id: str -
completion_window: strThe time frame within which the batch should be processed.
-
created_at: intThe Unix timestamp (in seconds) for when the batch was created.
-
endpoint: strThe OpenAI API endpoint used by the batch.
-
input_file_id: strThe ID of the input file for the batch.
-
object: Literal["batch"]The object type, which is always
batch."batch"
-
status: Literal["validating", "failed", "in_progress", 5 more]The current status of the batch.
-
"validating" -
"failed" -
"in_progress" -
"finalizing" -
"completed" -
"expired" -
"cancelling" -
"cancelled"
-
-
cancelled_at: Optional[int]The Unix timestamp (in seconds) for when the batch was cancelled.
-
cancelling_at: Optional[int]The Unix timestamp (in seconds) for when the batch started cancelling.
-
completed_at: Optional[int]The Unix timestamp (in seconds) for when the batch was completed.
-
error_file_id: Optional[str]The ID of the file containing the outputs of requests with errors.
-
errors: Optional[Errors]-
data: Optional[List[object]] -
object: Optional[str]The object type, which is always
list.
-
-
expired_at: Optional[int]The Unix timestamp (in seconds) for when the batch expired.
-
expires_at: Optional[int]The Unix timestamp (in seconds) for when the batch will expire.
-
failed_at: Optional[int]The Unix timestamp (in seconds) for when the batch failed.
-
finalizing_at: Optional[int]The Unix timestamp (in seconds) for when the batch started finalizing.
-
in_progress_at: Optional[int]The Unix timestamp (in seconds) for when the batch started processing.
-
metadata: Optional[Metadata]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.
-
model: Optional[str]Model ID used to process the batch, like
gpt-5-2025-08-07. 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. -
output_file_id: Optional[str]The ID of the file containing the outputs of successfully executed requests.
-
request_counts: Optional[object] -
usage: Optional[BatchUsage]Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-
-
Example
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get("OPENAI_API_KEY"), # This is the default and can be omitted
)
page = client.batches.list()
page = page.data[0]
print(page.id)
Response
{
"data": [
{
"id": "id",
"completion_window": "completion_window",
"created_at": 0,
"endpoint": "endpoint",
"input_file_id": "input_file_id",
"object": "batch",
"status": "validating",
"cancelled_at": 0,
"cancelling_at": 0,
"completed_at": 0,
"error_file_id": "error_file_id",
"errors": {
"data": [
{}
],
"object": "object"
},
"expired_at": 0,
"expires_at": 0,
"failed_at": 0,
"finalizing_at": 0,
"in_progress_at": 0,
"metadata": {
"foo": "string"
},
"model": "model",
"output_file_id": "output_file_id",
"request_counts": {},
"usage": {
"input_tokens": 0,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 0,
"output_tokens_details": {
"reasoning_tokens": 0
},
"total_tokens": 0
}
}
],
"has_more": true,
"object": "list",
"first_id": "batch_abc123",
"last_id": "batch_abc456"
}
Example
from openai import OpenAI
client = OpenAI()
client.batches.list()
Response
{
"object": "list",
"data": [
{
"id": "batch_abc123",
"object": "batch",
"endpoint": "/v1/chat/completions",
"errors": null,
"input_file_id": "file-abc123",
"completion_window": "24h",
"status": "completed",
"output_file_id": "file-cvaTdG",
"error_file_id": "file-HOWS94",
"created_at": 1711471533,
"in_progress_at": 1711471538,
"expires_at": 1711557933,
"finalizing_at": 1711493133,
"completed_at": 1711493163,
"failed_at": null,
"expired_at": null,
"cancelling_at": null,
"cancelled_at": null,
"request_counts": {
"total": 100,
"completed": 95,
"failed": 5
},
"metadata": {
"customer_id": "user_123456789",
"batch_description": "Nightly job",
}
},
{ ... },
],
"first_id": "batch_abc123",
"last_id": "batch_abc456",
"has_more": true
}
Domain Types
Batch
-
class Batch: …-
id: str -
completion_window: strThe time frame within which the batch should be processed.
-
created_at: intThe Unix timestamp (in seconds) for when the batch was created.
-
endpoint: strThe OpenAI API endpoint used by the batch.
-
input_file_id: strThe ID of the input file for the batch.
-
object: Literal["batch"]The object type, which is always
batch."batch"
-
status: Literal["validating", "failed", "in_progress", 5 more]The current status of the batch.
-
"validating" -
"failed" -
"in_progress" -
"finalizing" -
"completed" -
"expired" -
"cancelling" -
"cancelled"
-
-
cancelled_at: Optional[int]The Unix timestamp (in seconds) for when the batch was cancelled.
-
cancelling_at: Optional[int]The Unix timestamp (in seconds) for when the batch started cancelling.
-
completed_at: Optional[int]The Unix timestamp (in seconds) for when the batch was completed.
-
error_file_id: Optional[str]The ID of the file containing the outputs of requests with errors.
-
errors: Optional[Errors]-
data: Optional[List[object]] -
object: Optional[str]The object type, which is always
list.
-
-
expired_at: Optional[int]The Unix timestamp (in seconds) for when the batch expired.
-
expires_at: Optional[int]The Unix timestamp (in seconds) for when the batch will expire.
-
failed_at: Optional[int]The Unix timestamp (in seconds) for when the batch failed.
-
finalizing_at: Optional[int]The Unix timestamp (in seconds) for when the batch started finalizing.
-
in_progress_at: Optional[int]The Unix timestamp (in seconds) for when the batch started processing.
-
metadata: Optional[Metadata]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.
-
model: Optional[str]Model ID used to process the batch, like
gpt-5-2025-08-07. 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. -
output_file_id: Optional[str]The ID of the file containing the outputs of successfully executed requests.
-
request_counts: Optional[object] -
usage: Optional[BatchUsage]Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-
-
Batch Error
object
Batch Request Counts
object
Batch Usage
-
class BatchUsage: …Represents token usage details including input tokens, output tokens, a breakdown of output tokens, and the total tokens used. Only populated on batches created after September 7, 2025.
-
input_tokens: intThe number of input tokens.
-
input_tokens_details: InputTokensDetailsA detailed breakdown of the input tokens.
-
cached_tokens: intThe number of tokens that were retrieved from the cache. More on prompt caching.
-
-
output_tokens: intThe number of output tokens.
-
output_tokens_details: OutputTokensDetailsA detailed breakdown of the output tokens.
-
reasoning_tokens: intThe number of reasoning tokens.
-
-
total_tokens: intThe total number of tokens used.
-