Spreadsheets

Get the current state

Returns the workbook's state hash, for polling and for use as a precondition on a structural change.

GET /v1/spreadsheets/:id/state

Permission

The key must be granted sheets.values.read

A key without it gets 403 insufficient_scope, with the missing permission named in details.

Two uses, one value. Poll it to notice somebody else's change — there are no webhooks for spreadsheets — and send it as If-Match on a structural write so a change that moves data cannot land on a stale view.

Path parameters

Field Type Description
id required string The spreadsheet to check.

Request

curl https://api.veruapis.com/v1/spreadsheets/:id/state \
  -H "Authorization: Bearer vak_live_..."

Response

Field Type Description
document_id string
state string An opaque token that changes whenever the document does. Compare it with your last one; do not parse it.
checked_at RFC 3339 When the answer was computed.
{
  "data": {
  "document_id": "0199a1c2-6f3e-7a41-b8d2-5e9f0c3a7b41",
  "state": "a1b2c3d4e5f6a7b8",
  "checked_at": "2026-09-09T12:00:00Z"
},
  "meta": { "request_id": "req_01j8z9...", "timestamp": "2026-09-02T10:00:00Z" }
}
Worth knowing

Two uses, and they are the same value: poll it to notice someone else's change, and send it as If-Match on a structural write. There are no webhooks for spreadsheets, so polling this is how you watch a document.

Errors

Every failure uses the same shape, with a stable string code you can branch on. See the error reference.

Related

GET /v1/spreadsheets/:id/state

id
Runs the real request against your own workspace. The key is used once and never stored.