Create a batch
Submit an asynchronous, discounted batch of inference requests from a previously uploaded JSONL file, for workloads that can wait up to the completion window.
MONEY: the wallet must hold at least $0.10 of available runway to submit (402 otherwise); the batch discount and markup are frozen at submit time and the job is billed on completion. OWNER/ADMIN only (403). 400 when input_file_id/endpoint/model is missing or the body is not JSON. 503 when batch creation is temporarily unavailable upstream (the input file stays uploaded; retry later). 404 while the batch feature flag is off.
Authorizations
Your workspace API key, e.g. sk_sovereign_..., sent as Authorization: Bearer <key>.
Body
Id of a file uploaded via /v1/files with purpose "batch" containing the request JSONL. Must belong to this workspace (or be the input of one of its past batches); otherwise 404 "Input file not found".
The API route every line in the file targets.
/v1/chat/completions, /v1/completions, /v1/embeddings A representative model id from the file; it is the billing-rate basis. Must have configured pricing or the call is refused with 400.
How long the batch may take, e.g. "24h".
Response
201 with the batch object: { id, nebius_batch_id, endpoint, status, request_total, request_completed, request_failed, completion_window, billed_cost_usd, created_at, output_file_id, error_file_id, error }
The response is of type object.