> ## 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. # BatchSubmitBody Batch submit request body. ## Example Usage ```typescript theme={null} import { BatchSubmitBody } from "@openrouter/sdk/models"; let value: BatchSubmitBody = { endpoint: "/v1/responses", model: "Fiesta", }; ``` ## Fields | Field | Type | Required | Description | Example | | - | - | - | - | - | | `callbackUrl` | *string* | ➖ | HTTPS URL that receives a `batch.completed`, `batch.failed`, `batch.cancelled` or `batch.expired` webhook event when the batch reaches a terminal status. Must appear before `requests` in the request body. | | | `completionWindow` | [models.BatchSubmitBodyCompletionWindow](../models/batchsubmitbodycompletionwindow.mdx) | ➖ | N/A | | | `endpoint` | [models.Endpoint](../models/endpoint.mdx) | ✔️ | N/A | | | `input` | [models.BatchInputReference](../models/batchinputreference.mdx) | ➖ | A batch input file or table in your own storage, named in place of `requests`. Available to allowlisted callers on Google Vertex BYOK endpoints only. | | | `model` | *string* | ✔️ | N/A | | | `provider` | [models.BatchProviderPreferences](../models/batchproviderpreferences.mdx) | ➖ | Batch provider routing preferences. Only `provider.only` and `provider.allow_fallbacks` are supported. | \{ "only": \[ "google-vertex" ] } | | `requests` | [models.RequestT](../models/requestt.mdx)\[] | ➖ | The batch requests. Send exactly one of `requests` or `input`; `requests` must be the last field in the request body. | |