> ## Documentation Index > Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt > Use this file to discover all available pages before exploring further. # BatchObject ## Fields | Field | Type | Required | Description | | - | - | - | - | | `completion_window` | [components.BatchObjectCompletionWindow](../components/batchobjectcompletionwindow.mdx) | ✔️ | N/A | | `created_at` | *int* | ✔️ | N/A | | `endpoint` | *str* | ✔️ | N/A | | `error` | [Nullable\[components.BatchObjectError\]](../components/batchobjecterror.mdx) | ✔️ | N/A | | `expires_at` | *Nullable\[int]* | ✔️ | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | | `finalized_at` | *Nullable\[int]* | ✔️ | N/A | | `id` | *str* | ✔️ | N/A | | `model` | *str* | ✔️ | N/A | | `object` | [components.BatchObjectObjectBatch](../components/batchobjectobjectbatch.mdx) | ✔️ | N/A | | `output` | [Optional\[components.BatchOutputReference\]](../components/batchoutputreference.mdx) | ➖ | The output location of a batch submitted with `input`, whose `results` are `null`. Returned only by `GET /batches/{id}`, once the batch has ended and the provider reported an output folder or table. Batch lists and responses for a batch with an unpaid charge leave it out. | | `provider` | *Nullable\[str]* | ✔️ | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | | `request_counts` | [components.BatchObjectRequestCounts](../components/batchobjectrequestcounts.mdx) | ✔️ | N/A | | `results` | List\[[components.Result](../components/result.mdx)] | ✔️ | N/A | | `status` | [components.BatchObjectStatus](../components/batchobjectstatus.mdx) | ✔️ | N/A | | `usage` | [Nullable\[components.BatchObjectUsage\]](../components/batchobjectusage.mdx) | ✔️ | N/A |