Skip to main content
Deepgram's Docs

Search documentation

Type to search this documentation.

On this pageOverview

Conversation Text

Voice Agent

The ConversationText message is a JSON message that will be sent as a user interacts with the agent.

The ConversationText message facilitates real-time communication by relaying spoken statements from both the user and the assistant. This ensures that the conversation can be dynamically displayed on the client side, enhancing transparency and providing a clear, synchronized view of the interaction as it unfolds.

The server will send a ConversationText message every time the agent hears the user say something, and every time the agent speaks something. These can be used on the client side to display the conversation messages as they happen in real-time.

JSON

JSON
{
  "type": "ConversationText",
  "role": "", // The speaker of this statement, either "user" or "assistant"
  "content": "" // The statement that was spoken
}

When the listen.provider.model is set to flux-general-multi, user-role ConversationText messages include two additional fields surfaced from the STT TurnInfo response:

Field Type Description
languages_hinted string array (BCP-47) The language hints that were active at the time of the turn.
languages string array (BCP-47) Languages detected in the user's speech, sorted by word count (descending).
JSON
{
  "type": "ConversationText",
  "role": "user",
  "content": "Hello, how are you amigo?",
  "languages_hinted": [
    "en",
    "es",
    "de"
  ],
  "languages": [
    "en",
    "es"
  ]
}

These fields allow your client to adapt downstream behavior — for example, selecting the correct TTS voice or LLM prompt language based on what the user actually spoke. For full details on language hints and detection, see Flux Multilingual & Language Prompting.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu