SnozeDevelopers
API referenceAgent

Switch which version of a message is active

Points the chat's active thread at the latest leaf beneath the given message, so a regenerated or edited branch becomes the visible conversation, and returns the resulting transcript. Requires a Clerk session for a workspace member with the `ai:write` permission; an unknown chat or a message id that is not part of it is reported as not found.

POST
/v1/workspaces/{workspaceId}/agent/chats/{chatId}/messages/{messageId}/switch

Authorization

apiKey
headerAuthorizationBearer <snoze_sk_…>

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

Path Parameters

workspaceId*string
chatId*string
messageId*string

Response Body

Success

application/json
  1. response
data*
Example Request
curl -X POST 'https://api.snoze.dev/v1/workspaces/string/agent/chats/string/messages/string/switch'
Example Response
{  "data": {    "chat": {      "id": "string",      "workspaceId": "string",      "title": "string",      "parentSessionId": "string",      "model": "string",      "appearance": {        "shape": "box",        "color": "string",        "accentColor": "string",        "eyes": "dot",        "eyePlacement": "centered",        "motion": "still",        "finish": "flat",        "gradientColor": "string",        "glowColor": "string",        "intensity": "subtle",        "cosmetics": {          "head": "none",          "face": "none"        }      },      "status": "idle",      "runningMessageId": "string",      "streamIdentity": {        "turnId": "string",        "messageId": "string"      },      "lastError": "string",      "background": {        "enabled": true,        "continuations": 0,        "deadlineAt": 0      },      "createdAt": "string",      "updatedAt": "string"    },    "messages": [      {        "id": "string",        "role": "user",        "parts": [],        "metadata": {          "seq": 0,          "parentMessageId": "string",          "createdAt": "string",          "model": "string",          "snozeAi": true,          "credits": 0,          "versionIndex": 0,          "versionCount": 0,          "versionIds": [            "string"          ]        }      }    ],    "plan": {      "todos": [        {          "text": "string",          "status": "pending"        }      ]    }  }}