Skip to main content
This is an event broadcasted by Tavus. A tool call event denotes when an LLM tool call should be made on the client side. The event will contain the name and arguments of the function that should be called. Tool call events can be used to call external APIs or databases.
Note: it is the client’s responsibility to take action on these tool calls, as Tavus will not execute code server-side.
For more details on LLM tool calls, please take a look here. This event includes a seq field for global ordering and a turn_idx field to identify which conversational turn triggered the tool call. 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
string

This is the type of event that is being sent back. This field will be present on all events and can be used to distinguish between different event types.

Example:

"conversation.tool_call"

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

conversation_id
string

The unique identifier for the conversation.

Example:

"c123456"

inference_id
string

This is a unique identifier for a given utterance. In this case, it will be the user utterance that triggered the tool call.

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

This object will contain the name and arguments properties that have been extracted from the ChoiceDeltaToolCallFunction object