Read a workbook's checkpoint
Only the latest checkpoint is servable today (no history endpoint yet). No request headers are read by this route — neither `Authorization` nor any of the three contract headers; `security: []` reflects that faithfully rather than implying a check that does not exist.
/workbooks/{id}Path Parameters
Query Parameters
Only the LATEST checkpoint is servable (no history) — a value that does not match the current version returns a clean 404, never a silent fall-through to HEAD.
Response Body
application/json
application/json
curl -X GET "https://example.com/workbooks/string"{
"workbookId": "string",
"version": "string",
"sheets": [
{
"sheetId": "string",
"name": "string",
"cells": {
"property1": "string",
"property2": "string"
},
"formats": {
"property1": {
"property1": null,
"property2": null
},
"property2": {
"property1": null,
"property2": null
}
}
}
]
}{
"error": "not_found",
"message": "string"
}Apply a batch of commands to a workbook
Validates the WHOLE batch (shape, capability, sheet, commandId reuse) before applying anything; a commandId already committed in a prior batch is recognized and its cached result replayed rather than re-applied, so retrying a batch with the same commandIds is safe. A per-command apply() failure is NOT a batch failure — it lands as an `ok: false` CommandResult with its own `error.code` (see CommandResult); the whole batch is still 200 unless the batch itself was rejected pre-apply (400) or the `If-Match` precondition failed (409).
Read a single cell
A per-call agent read, answered from an in-memory cache of the workbook when resident. No request headers are read by this route — same `security: []` note as GET /workbooks/{id}.