List sessions

GET /v1/sessions
List all sessions for the authenticated user.

List active sessions

GET /v2/sessions/active
List only active (non-ended) sessions.

Create session

POST /v1/sessions
Request body:
FieldTypeDescription
machineIdstringTarget machine ID
metadatastringEncrypted session metadata
encryptionKeystringEncrypted session key

Get session

GET /v1/sessions/:id
Get a session by ID.

Update session

PATCH /v1/sessions/:id
Update session metadata or state.

Delete session

DELETE /v1/sessions/:id
Delete a session permanently.

Send message

POST /v3/sessions/:id/messages
Request body:
FieldTypeDescription
contentstringEncrypted message content (ciphertext string)
localIdstringClient-generated ID for deduplication
Response:
{
  "id": "clx...",
  "seq": 42,
  "localId": "local-123",
  "content": "encrypted-ciphertext-string...",
  "createdAt": "2026-03-26T00:00:00.000Z"
}

Get messages

GET /v3/sessions/:id/messages
Fetch message history with pagination. Query parameters:
ParamTypeDescription
beforenumberGet messages before this sequence number
afternumberGet messages after this sequence number
limitnumberMax messages to return (default: 50)