Skip to content

Commit 818bfdb

Browse files
claude[bot]claude
andauthored
docs(api): the batch cap is embedder-only, not the deployment's to configure (#17185)
`content/docs/api/data-api.mdx` told operators the bulk-route cap is "the deployment's `batch.maxBatchSize` (default 200, configurable 1-1000)". Both halves of that were ruled false on 2026-09-07: a `RestServerConfig` is the ARGUMENT a host passes when it constructs the server, and there is exactly one door -- `createRestApiPlugin({ api })`, whose `start()` is the only non-test site reaching `new RestServer(...)`. Neither shipped boot path opens it with a `batch` config: `os serve` forwards exactly two `api.*` keys and the dev plugin passes none. A CLI-started deployment therefore always gets 200 and no flag, config file or CLI option moves it. The audience of this page is exactly the audience that cannot configure it, so an operator who hit `400 BATCH_TOO_LARGE` was sent looking for a knob that does not exist for them. This is the third and last carrier of the claim still saying it in public; the `packages/spec` and `packages/rest` carriers were corrected under the same ruling. The wording here is copied from those two rather than invented afresh -- "embedder-only", "written only by a host that constructs this config, never by `os serve` or the dev plugin", and "a CLI-started deployment always gets the default". Claude-Session: https://claude.ai/code/session_012GKcPZbMoGq7WPzKLfRBTU Co-authored-by: Claude <noreply@anthropic.com>
1 parent d18b760 commit 818bfdb

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

content/docs/api/data-api.mdx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -323,9 +323,13 @@ prior delete, and the response reports `succeeded: 0` with each row's
323323
### Batch size
324324

325325
Every bulk route above — `batch`, `createMany`, `updateMany`, `deleteMany`
326-
caps how many records one request may carry. The limit is the deployment's
327-
`batch.maxBatchSize` (default **200**, configurable 1–1000); over it the request
328-
is rejected with `400 BATCH_TOO_LARGE` before anything is written:
326+
caps how many records one request may carry. The limit is
327+
`batch.maxBatchSize`, and it is **embedder-only** (#15543): it is written only
328+
by a host that constructs the `RestServerConfig` itself, never by `os serve` or
329+
the dev plugin. A CLI-started deployment therefore always gets the default of
330+
**200**, and no flag, config file or CLI option moves it; only the embedding
331+
host can set it, anywhere in 1–1000. Over the cap the request is rejected with
332+
`400 BATCH_TOO_LARGE` before anything is written:
329333

330334
```json
331335
{

0 commit comments

Comments
 (0)