Sessions
Sessions represent conversations between the user and the agent. Each session tracks its messages, model, and status.
GET
/sessionAuthenticatedList all sessions with pagination.
| Parameter | Type | Required | Description |
|---|---|---|---|
archived | boolean | No | Include archived sessions (query param) |
limit | number | No | Results per page (default 50, max 200) |
offset | number | No | Pagination offset (default 0) |
curl "http://127.0.0.1:7741/session?limit=10&offset=0" \
-H "Authorization: Bearer $TOKEN"200Response
{
"ok": true,
"data": [
{
"id": "a1b2c3d4",
"title": "GitHub issue summary",
"model": "claude-sonnet-4-20250514",
"created_at": 1709467200000,
"updated_at": 1709470800000,
"archived_at": null,
"parent_session_id": null,
"agent_type": "main"
}
]
}GET
/session/:idAuthenticatedGet a single session with all its messages.
200Response
{
"ok": true,
"data": {
"session": {
"id": "a1b2c3d4",
"title": "GitHub issue summary",
"model": "claude-sonnet-4-20250514",
"created_at": 1709467200000,
"updated_at": 1709470800000,
"archived_at": null,
"parent_session_id": null,
"agent_type": "main"
},
"messages": [
{
"id": "m1",
"session_id": "a1b2c3d4",
"role": "user",
"content": "Summarize my issues",
"created_at": 1709467200000
},
{
"id": "m2",
"session_id": "a1b2c3d4",
"role": "assistant",
"content": "You have 3 open issues...",
"created_at": 1709467205000
}
]
}
}POST
/session/:id/resumeAuthenticatedResume an archived session (unarchive and mark active).
200Response
{
"ok": true,
"data": {
"session_id": "a1b2c3d4",
"status": "resumed"
}
}DELETE
/session/:idAuthenticatedArchive a session (soft delete).
200Response
{
"ok": true,
"data": {
"session_id": "a1b2c3d4",
"status": "archived"
}
}