Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.tavus.io/llms.txt

Use this file to discover all available pages before exploring further.

This is an event broadcasted by Tavus. conversation.started_speaking fires the moment either the replica or the user begins speaking. conversation.stopped_speaking fires when either party stops speaking. The role field in the event’s properties object identifies who is speaking — "replica" or "user". When the conversation.stopped_speaking event is sent, the properties object will include:
  • A role field ("replica" or "user") identifying who stopped speaking.
  • An interrupted field indicating whether the speaker was cut off mid-speech. true means the speaker was interrupted before finishing naturally.
  • A duration field indicating how long the speaker was speaking, in seconds. This value may be null in rare cases where the start time could not be determined.
The inference_id can be used to correlate these events with conversation.utterance, conversation.toolcall, and other events from the same turn. This event includes a seq field for global ordering and a turn_idx field to identify which conversational turn the speaking state change belongs to. See Event Ordering and Turn Tracking for details.
message_type
string

Message type indicates what product this event will be used for. In this case, the message_type will be conversation

Example:

"conversation"

event_type
enum<string>

A role-agnostic speaking state event. conversation.started_speaking fires when either the replica or the user begins speaking. conversation.stopped_speaking fires when either party stops speaking. Both events fire in parallel with the existing role-specific events.

Available options:
conversation.started_speaking,
conversation.stopped_speaking
Example:

"conversation.started_speaking"

seq
integer

A globally monotonic sequence number assigned to each event. Use this to determine the ordering of events — a higher seq means the event was sent later. This is useful for reconciling events that may arrive out of order.

Example:

42

inference_id
string

A unique identifier for the current utterance. Can be used to correlate with conversation.utterance, conversation.toolcall, and other events from the same turn.

Example:

"83294d9f-8306-491b-a284-791f56c8383f"

turn_idx
integer

The conversation turn index. This value increments each time a conversation.respond interaction is received, and groups all events that belong to the same conversational turn. Use this to correlate events (utterances, tool calls, speaking state changes, etc.) that are part of the same turn.

Example:

3

properties
object