{
"message_type": "conversation",
"event_type": "conversation.agent_stop",
"seq": 318,
"conversation_id": "your-conversation-id",
"inference_id": "550e8400-e29b-41d4-a716-446655440000",
"properties": {
"task_id": "call_abc123",
"status": "done",
"summary": "Two pull requests are open on the billing repo; the oldest has had no activity in three weeks."
}
}Agent Stop Event
Outbound: Tavus reports that a background task has finished, one way or another.
Exactly one of these follows every conversation.agent_start, including tasks that never ran and tasks cancelled when the call ends - so you can always close out a task rather than leaving a spinner up.
These events ride the data channel. Treat a stop for a task_id you have not seen as terminal rather than assuming its start was lost: for a task that failed to dispatch, the stop is emitted before the conversation.tool_call that requested it.
conversation for conversation-layer app messages.
"conversation"
conversation.agent_stop.
"conversation.agent_stop"
Unix timestamp (seconds since epoch) indicating when this event was created. Use this to build timestamped transcripts or reconstruct the timeline of a conversation.
1746000000.123
Monotonic per event; a higher seq was emitted later. Use with turn_idx as in Event ordering and turn tracking.
42
The unique identifier for the conversation.
"c123456"
Unique identifier for the utterance that triggered the delegation.
"83294d9f-8306-491b-a284-791f56c8383f"
The outcome. The PAL speaks the result itself when the task finishes, so you do not need to relay summary to the user yourself.
Show child attributes
Show child attributes

