GET /v1/sessions/{session_id}/events - List events (JSON)
GET /v1/sessions/{session_id}/events
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Session ID (prefixed, e.g., sess_…)
Query Parameters
Section titled “Query Parameters ”Event types to exclude from the response (can be specified multiple times). Common delta events to exclude: output.message.delta, reason.thinking.delta
Responses
Section titled “ Responses ”Events list
Response wrapper for list endpoints.
All list endpoints return responses wrapped in a data field.
object
Array of items returned by the list operation.
Standard event following the Everruns event protocol.
All events have a consistent structure:
id: Unique event identifier (format: event_{32-hex})type: Event type in dot notation (e.g., “input.message”, “reason.started”)ts: ISO 8601 timestamp with millisecond precisionsession_id: Session this event belongs to (format: session_{32-hex})context: Correlation context for tracingdata: Event-specific payload (typed via EventData enum)metadata: Optional arbitrary metadatatags: Optional list of tags for filtering
object
Correlation context
object
Atom execution identifier
Example
exec_01933b5a00007000800000000000001User message that triggered this turn
Example
message_01933b5a00007000800000000000001Parent span ID for hierarchical linking (OTel-style). Links this span to its parent in the trace hierarchy.
This event’s span ID for observability (OTel-style). Uniquely identifies this span within the trace.
Trace ID for observability (OTel-style). Groups related spans into a single trace. For agent turns, this is typically the turn_id string.
Turn identifier (for turn-scoped events)
Example
turn_01933b5a00007000800000000000001Data for input.message event
object
The user message
object
Message content as array of content parts (text, images, tool calls, tool results)
Text content
object
Image content (base64 or URL)
object
Image file content (reference to uploaded image by ID)
object
Original filename (for display)
ID of the uploaded image (format: img_{32-hex})
Example
img_01933b5a00007000800000000000001Tool call content (assistant requesting tool execution)
object
Tool result content (result of tool execution)
object
ID of the tool call this result corresponds to
Runtime controls (model, reasoning, etc.)
object
Model ID to use for this message (format: model_{32-hex}). Overrides session and agent model settings.
Example
model_01933b5a00007000800000000000001Timestamp when the message was created
Unique message ID (format: message_{32-hex})
Example
message_01933b5a00007000800000000000001Message-level metadata
Message role
Thinking content from extended thinking models (Anthropic Claude) This is the model’s chain-of-thought reasoning before producing the response. Must be included in subsequent API calls when thinking is enabled.
Cryptographic signature for thinking content (Anthropic Claude) Required when sending thinking back in subsequent API calls.
Data for output.message.delta event
Incremental text update during LLM generation. Events are batched (~100ms) to reduce volume while providing real-time feedback.
object
Accumulated text so far
The new text chunk
Turn ID this delta belongs to
Example
turn_01933b5a00007000800000000000001Data for output.message.started event
Emitted when the LLM starts generating a response. UI can show a “thinking” indicator until output.message.delta or output.message.completed events arrive.
object
Optional model name being used
Turn ID this output belongs to
Example
turn_01933b5a00007000800000000000001Data for output.message.completed event
object
The agent message
object
Message content as array of content parts (text, images, tool calls, tool results)
Text content
object
Image content (base64 or URL)
object
Image file content (reference to uploaded image by ID)
object
Original filename (for display)
ID of the uploaded image (format: img_{32-hex})
Example
img_01933b5a00007000800000000000001Tool call content (assistant requesting tool execution)
object
Tool result content (result of tool execution)
object
ID of the tool call this result corresponds to
Runtime controls (model, reasoning, etc.)
object
Model ID to use for this message (format: model_{32-hex}). Overrides session and agent model settings.
Example
model_01933b5a00007000800000000000001Timestamp when the message was created
Unique message ID (format: message_{32-hex})
Example
message_01933b5a00007000800000000000001Message-level metadata
Message role
Thinking content from extended thinking models (Anthropic Claude) This is the model’s chain-of-thought reasoning before producing the response. Must be included in subsequent API calls when thinking is enabled.
Cryptographic signature for thinking content (Anthropic Claude) Required when sending thinking back in subsequent API calls.
Token usage
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Data for turn.started event
object
Input message content (for observability)
Input message ID that triggered this turn
Example
message_01933b5a00007000800000000000001Turn identifier
Example
turn_01933b5a00007000800000000000001Data for turn.completed event
object
Duration in milliseconds
Input message content (for observability, passed through from turn.started)
Number of iterations in this turn
Turn identifier
Example
turn_01933b5a00007000800000000000001Aggregated token usage for all LLM calls in this turn
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Data for turn.failed event
object
Error message
Error code
Turn identifier
Example
turn_01933b5a00007000800000000000001Data for reason.started event
object
Agent ID being used
Example
agent_01933b5a00007000800000000000001Data for reason.completed event
object
Duration of the reason phase in milliseconds
Error message if failed
Whether tool calls were requested
Whether the LLM call succeeded
Text response preview (first 200 chars)
Number of tool calls requested
Token usage from the LLM call
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Data for act.started event
object
Tool calls to be executed
Summary of a tool call (compact form without arguments)
object
Data for act.completed event
object
Whether all tool calls completed
Duration of the act phase in milliseconds
Number of failed tool calls
Number of successful tool calls
Data for tool.started event
object
The tool call being executed
object
Arguments as JSON
object
Unique ID for this tool call
Tool name to execute
Data for tool.completed event
object
Duration of the tool call in milliseconds
Error message if failed
Result content (for successful calls)
Text content
object
Image content (base64 or URL)
object
Image file content (reference to uploaded image by ID)
object
Original filename (for display)
ID of the uploaded image (format: img_{32-hex})
Example
img_01933b5a00007000800000000000001Tool call content (assistant requesting tool execution)
object
Tool result content (result of tool execution)
object
ID of the tool call this result corresponds to
Status: “success”, “error”, “timeout”, “cancelled”
Whether the tool call succeeded
Tool call ID
Tool name
Data for llm.generation event
Emitted after each LLM API call to provide full visibility into the messages sent to the model and the response received.
object
Messages sent to the LLM (including system prompt)
A message in the conversation
object
Message content as array of content parts (text, images, tool calls, tool results)
Text content
object
Image content (base64 or URL)
object
Image file content (reference to uploaded image by ID)
object
Original filename (for display)
ID of the uploaded image (format: img_{32-hex})
Example
img_01933b5a00007000800000000000001Tool call content (assistant requesting tool execution)
object
Tool result content (result of tool execution)
object
ID of the tool call this result corresponds to
Runtime controls (model, reasoning, etc.)
object
Model ID to use for this message (format: model_{32-hex}). Overrides session and agent model settings.
Example
model_01933b5a00007000800000000000001Timestamp when the message was created
Unique message ID (format: message_{32-hex})
Example
message_01933b5a00007000800000000000001Message-level metadata
Message role
Thinking content from extended thinking models (Anthropic Claude) This is the model’s chain-of-thought reasoning before producing the response. Must be included in subsequent API calls when thinking is enabled.
Cryptographic signature for thinking content (Anthropic Claude) Required when sending thinking back in subsequent API calls.
Metadata about the generation
object
Compaction information if context was compressed before generation Occurs when the conversation context exceeded the model’s limit
object
Whether compaction was performed
Duration of the compaction operation in milliseconds
Number of input tokens after compaction
Number of input tokens before compaction
Duration of the generation in milliseconds
Error message if generation failed
Finish reasons from the LLM (e.g., [“stop”], [“tool_calls”]) Required for gen-ai semantic conventions
Model identifier used for generation
Provider type (openai, anthropic, etc.)
Unique response identifier from the LLM provider Required for gen-ai semantic conventions
Retry information if rate limit retries occurred Contains number of retries and total wait time
object
Number of retry attempts made (0 = succeeded on first try)
Total time spent waiting between retries in milliseconds
Whether the generation was successful
Time to first token in milliseconds (streaming latency)
Token usage statistics
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Output from the LLM
object
Text response from the model
Tool calls requested by the model
Tool call from LLM response
object
Arguments as JSON
object
Unique ID for this tool call
Tool name to execute
Tools available to the LLM for this generation
Summary of a tool definition (compact form for events)
object
Tool description
Tool name
Data for reason.thinking.delta event (extended thinking content from models like Claude)
This event streams incremental thinking/reasoning content from models that support extended thinking mode (e.g., Claude with thinking enabled). The thinking content represents the model’s chain-of-thought reasoning before producing the final response.
object
Accumulated thinking text so far (convenience for UI)
The thinking delta (new thinking text since last delta)
Turn ID this delta belongs to (for correlation)
Example
turn_01933b5a00007000800000000000001Data for reason.thinking.started event
Emitted when extended thinking begins during reasoning phase. This signals the model is using chain-of-thought reasoning. UI can show a “thinking” indicator.
object
Optional model name being used
Turn ID this thinking belongs to
Example
turn_01933b5a00007000800000000000001Data for reason.thinking.completed event
Emitted when extended thinking completes and the model transitions to producing the final response. Contains the complete thinking content.
object
Complete thinking content
Turn ID this thinking belongs to
Example
turn_01933b5a00007000800000000000001Data for turn.cancelled event
object
Reason for cancellation
Turn identifier
Example
turn_01933b5a00007000800000000000001Token usage before cancellation (if available)
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Data for session.started event
object
Agent ID
Example
agent_01933b5a00007000800000000000001Model ID if specified
Example
model_01933b5a00007000800000000000001Data for session.activated event (turn started, session now active)
object
Input message ID that triggered the turn
Example
message_01933b5a00007000800000000000001Turn ID that activated the session
Example
turn_01933b5a00007000800000000000001Data for session.idled event (turn completed, session now idle)
object
Number of iterations in the completed turn
Turn ID that just completed
Example
turn_01933b5a00007000800000000000001Cumulative token usage for the session at this point
object
Number of tokens written to cache (Anthropic-specific)
Number of tokens read from cache (reduces cost)
Number of input/prompt tokens
Number of output/completion tokens
Unique event identifier (format: event_{32-hex})
Example
event_01933b5a00007000800000000000001Arbitrary metadata for the event
Sequence number within session (for ordering)
Session this event belongs to (format: session_{32-hex})
Example
session_01933b5a00007000800000000000001Tags for filtering and categorization
Event timestamp
Event type in dot notation
Invalid session ID
Session not found
Internal server error