---
title: "Execute up to 20 REST operations."
method: POST
path: "/batch"
tags: ["meta"]
---

# Execute up to 20 REST operations.

`POST /batch`

Validates the complete envelope before dispatch, then executes operations sequentially through their normal REST routes. Results preserve input order. An operation failure does not stop later operations, and the batch is not transactional.

## Request body

- BatchOperation[]
  - `body` unknown
  - `id` string, required — Caller-supplied correlation ID, unique within this batch.
  - `idempotencyKey` string — Per-operation idempotency key for POST or PATCH. The outer request key is not inherited.
  - `method` 'GET' | 'POST' | 'PATCH' | 'DELETE', required
  - `path` string, required — Path relative to /v1, including any query string (for example /streams?limit=10).

## Response `200`

Ordered per-operation results. Individual results can contain non-2xx statuses.

- BatchResult[]
  - `body` unknown
  - `headers` object
  - `id` string, required
  - `status` integer, required

## Other responses

- `400` — The batch envelope is invalid; no operations were executed.
- `401` — Authentication is required.

---

[API](https://skmtc.dev/streamloop/apis/streamloop-api.md) · [All operations](https://skmtc.dev/streamloop/apis/streamloop-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/streamloop/streamloop-api/revisions/7f30ccbac1b1/schema)
