Get Session Timeline By Id
Consolidated, time-ordered timeline of a session's events.
/api/v1/sessions/timeline/{session_id}Authentication
Syllable-API-KeyrequiredSend Syllable-API-Key in the header.
Need a credential? Create or manage an API token in the Syllable Console.
Parameters
Path parameters
session_id
string
path
required
Responses
200Successful Response
application/json
response
SessionTimelineResponse
required
3 fields
session_idstringrequiredInternal ID of the session
session_startstring (date-time) | nulloptionalThe call's start (placement) time; the zero point for all offsets. Falls back to the first transcript turn for legacy sessions with no session_start event.
eventsTimelineEvent[]requiredAll events, ordered by timestamp ascending
Item schema
itemsTimelineEventrequiredA single normalized event on the consolidated session timeline.
14 fields
kindenum<string>requiredWhich stream this event came from
["transcript","tool","latency"]timestampstring (date-time)requiredAbsolute time of the event (for ordering)
offsetstringrequiredTime since session start, formatted MM:SS (or HH:MM:SS)
turn_indexinteger | nulloptional0-based index of the transcript turn. Transcript events carry their own turn index; tool/latency events carry the index of the nearest preceding turn they bind to. None only for non-transcript events that precede the first transcript turn.
sourcestring | nulloptional"user" or "agent" (transcript events)
textstring | nulloptionalMessage content (transcript events)
langstring | nulloptionalLanguage code (transcript events)
categorystring | nulloptionaltool | llm | tts | stt | http. A tool call surfaces once, as a kind=tool event; its redundant tool-latency measurement is dropped from the timeline.
labelstring | nulloptionalTool name (tool events) or the latency measurement name (e.g. stt_processing)
metadatastring[] | nulloptionalProvider/model parts of a latency label
Item schema
itemsstringrequiredduration_msnumber | nulloptionalDuration of the event in milliseconds
tool_requeststring | nulloptionalTool request payload, JSON-encoded
tool_resultstring | nulloptionalTool response payload, JSON-encoded
tool_errorstring | nulloptionalTool error payload, JSON-encoded
Response example
{
"session_id": "string",
"session_start": "string",
"events": [
{
"kind": "string",
"timestamp": "string",
"offset": "string",
"turn_index": "string",
"source": "string",
"text": "string",
"lang": "string",
"category": "string",
"label": "string",
"metadata": "string",
"duration_ms": "string",
"tool_request": "string",
"tool_result": "string",
"tool_error": "string"
}
]
}422Validation Error
application/json
response
HTTPValidationError
required
1 field
detailValidationError[]optionalItem schema
itemsValidationErrorrequired3 fields
locstring | integer[]requiredItem schema
itemsstring | integerrequired2 options
Option 1stringrequiredOption 2integerrequiredmsgstringrequiredtypestringrequiredResponse example
{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string"
}
]
}
