Get a robot session
Retrieve a specific robot session with a page of its messages. Sessions can involve interactions with multiple Robots, so Robot-authored messages identify the Robot. Messages may not be representative of exactly what is sent into a language model, as certain optimisations may be performed before this such as compaction, summarisation or removal of irrelevant context. Any member with `USE_ROBOTS` can see other members' sessions and messages with a Robot. Robots are not considered private assistants, but rather shared tools for the team to use for managing their community. The default page contains up to 50 messages. The `limit` parameter is clamped to 1–100; use `before` with the returned message cursor to load older history. Reading a session records the requesting account's view and acknowledges session events through the returned stream offset.
/robots/sessions/{session_id}Retrieve a specific robot session with a page of its messages. Sessions can involve interactions with multiple Robots, so Robot-authored messages identify the Robot. Messages may not be representative of exactly what is sent into a language model, as certain optimisations may be performed before this such as compaction, summarisation or removal of irrelevant context.
Any member with USE_ROBOTS can see other members' sessions and
messages with a Robot. Robots are not considered private assistants, but
rather shared tools for the team to use for managing their community.
The default page contains up to 50 messages. The limit parameter is
clamped to 1–100; use before with the returned message cursor to load
older history.
Reading a session records the requesting account's view and acknowledges session events through the returned stream offset.
In: cookie
Path Parameters
Robot session ID
Query Parameters
Load messages older than this message ID.
Maximum number of messages to return.
Response Body
application/json
application/json
curl -X GET "https://example.com/robots/sessions/cc5lnd2s1s4652adtu50"{
"id": "cc5lnd2s1s4652adtu50",
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"deletedAt": "2019-08-24T14:15:22Z",
"misc": {},
"name": "string",
"created_by": {
"id": "cc5lnd2s1s4652adtu50",
"joined": "2019-08-24T14:15:22Z",
"suspended": "2019-08-24T14:15:22Z",
"handle": "Southclaws",
"name": "Barnaby Keene",
"signature": "<body><p>Sent with love from London!</p></body>",
"roles": [
{
"badge": true,
"default": true,
"id": "cc5lnd2s1s4652adtu50",
"name": "string",
"colour": "string",
"meta": {}
}
]
},
"message_list": {
"page_size": 0,
"results": 0,
"next_before": "cc5lnd2s1s4652adtu50",
"messages": [
{
"id": "string",
"role": "system",
"parts": [
{
"type": "text",
"text": "string",
"state": "streaming"
}
],
"metadata": {},
"created_at": "2019-08-24T14:15:22Z",
"queued": true,
"assets": [
{
"id": "cc5lnd2s1s4652adtu50",
"filename": "string",
"path": "string",
"mime_type": "string",
"width": 0,
"height": 0,
"parent": {
"id": "cc5lnd2s1s4652adtu50",
"filename": "string",
"path": "string",
"mime_type": "string",
"width": 0,
"height": 0,
"parent": {}
}
}
],
"robot": {
"id": "cc5lnd2s1s4652adtu50",
"name": "string"
},
"author": {
"id": "cc5lnd2s1s4652adtu50",
"joined": "2019-08-24T14:15:22Z",
"suspended": "2019-08-24T14:15:22Z",
"handle": "Southclaws",
"name": "Barnaby Keene",
"signature": "<body><p>Sent with love from London!</p></body>",
"roles": [
{
"badge": true,
"default": true,
"id": "cc5lnd2s1s4652adtu50",
"name": "string",
"colour": "string",
"meta": {}
}
]
},
"branch": "string",
"isolation_scope": "string"
}
]
},
"stream_offset": "string",
"active_turn_id": "cc5lnd2s1s4652adtu50",
"root_robot_id": "string",
"active_workspace": {
"workspace_id": "cc5lnd2s1s4652adtu50",
"workspace_instance_id": "cc5lnd2s1s4652adtu50",
"provider": "local",
"allow_untrusted_commands": true,
"meta": {}
}
}{
"type": "string",
"title": "string",
"detail": "string",
"trace_id": "string",
"metadata": {}
}Submit a Robot session message POST
Queue a message in a Robot session. The session is created when it does not already exist. New sessions use Denbot unless `robotId` selects a custom Robot, which then remains the root Robot for the session. Submission is asynchronous. The response identifies the accepted message and the session stream. Compatible queued messages may later be consumed together by one Robot turn.
List robot sessions GET
Get a paginated list of Robot sessions. These are chat sessions with the Robot system. Denbot may delegate work to specialised Robots inside the same session. Delegated events retain their ADK branch and isolation scope so the execution tree remains inspectable. You may include an account ID to filter sessions by account. Only those with "USE_ROBOTS" permission can use Robots, however sessions, messages and usage is not considered hidden to other accounts with the usage permission. Robots are intended as administrative or moderation tools to be shared among the team rather than private assistants.