SnozeDevelopers
API referenceSurface history

Restore a surface to an earlier version

Rewrites the surface's blocks back to the state reconstructed at the given version in one transaction, emitting ordinary block delete and create events so the restore is itself a revision and can be undone by restoring forward. Requires `surfaces:write` on the surface. A version outside the plan's history window, or one whose replay is only approximate, is refused.

POST
/v1/workspaces/{workspaceId}/surfaces/{surfaceId}/history/{version}/restore
AuthorizationBearer <token>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

In: header

Path Parameters

workspaceId*string
surfaceId*string
version*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/workspaces/string/surfaces/string/history/string/restore" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "workspaceVersion": 0,    "blocks": [      {        "id": "string",        "workspaceId": "string",        "surfaceId": "string",        "parentBlockId": "string",        "kind": "paragraph",        "orderKey": "string",        "manifest": {},        "layout": {          "x": 0,          "y": 0,          "w": 0,          "h": 0,          "tab": "string"        },        "plainText": "string",        "createdAt": "string",        "updatedAt": "string"      }    ]  }}