Comment on a block
Creates a comment anchored to one block of the surface, optionally at a client-supplied id so a text selection can be marked before the row exists. Requires `blocks:comment` on the surface. Fails with a not-found error when the surface or block does not exist and with a validation error when the body is empty or longer than 2,000 characters.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringsurfaceId*stringblockId*stringapplication/json- body
id?|nullbody*stringcontent?array<>|nullclientMutationId?string|nullSuccess
application/json- response
data*curl -X POST 'https://api.snoze.dev/v1/workspaces/string/surfaces/string/blocks/string/comments' \ -H 'Content-Type: application/json' \ -d '{ "body": "string"}'{ "data": { "id": "string", "workspaceId": "string", "surfaceId": "string", "blockId": "string", "authorUserId": "string", "authorDisplayName": "string", "authorAvatarUrl": "string", "body": "string", "content": [], "resolvedAt": "string", "createdAt": "string" }}List the comments on a surface
Returns every block comment on the surface in creation order, each with its author's display name and avatar. Requires `blocks:read` on the surface, which is resolved per item exactly like reading the surface itself, so comments are never visible more widely than the page.
Resolve or reopen a block comment
Sets or clears the comment's resolved marker according to the `resolved` flag and returns the updated comment. Requires `blocks:comment` on the surface. Returns a not-found error when the surface or comment does not exist.