{// Union field message can be only one of the following:"text": {object (Text)},"payload": {object},"liveAgentHandoff": {object (LiveAgentHandoff)},"endInteraction": {object (EndInteraction)},"mixedAudio": {object (MixedAudio)},"telephonyTransferCall": {object (TelephonyTransferCall)}// End of list of possible types for union field message.}
Fields
Union field message. Required. The rich response message. message can be only one of the following:
A signal that the client should transfer the phone call connected to this agent to a third-party endpoint.
Text
The text response message.
JSON representation
{"text": [string]}
Fields
text[]
string
A collection of text response variants. If multiple variants are defined, only one text response variant is returned at runtime.
LiveAgentHandoff
Indicates that the conversation should be handed off to a human agent.
Dialogflow only uses this to determine which conversations were handed off to a human agent for measurement purposes. What else to do with this signal is up to you and your handoff procedures.
You may set this, for example:
In the entry fulfillment of a Dialogflow CX Page if entering the page indicates something went extremely wrong in the conversation.
In a webhook response when you determine that the customer issue can only be handled by a human.
Custom metadata for your handoff procedure. Dialogflow doesn't impose any structure on this.
EndInteraction
This type has no fields.
Indicates that interaction with the Dialogflow agent has ended.
MixedAudio
Represents an audio message that is composed of both segments synthesized from the Dialogflow agent prompts and ones hosted externally at the specified URIs.
{"allowPlaybackInterruption": boolean,// Union field content can be only one of the following:"audio": string,"uri": string// End of list of possible types for union field content.}
Fields
allowPlaybackInterruption
boolean
Whether the playback of this segment can be interrupted by the end user's speech and the client should then start the next Dialogflow request.
Union field content. Content of the segment. content can be only one of the following:
Raw audio synthesized from the Dialogflow agent's response using the output config specified in the request.
A base64-encoded string.
uri
string
Client-specific URI that points to an audio clip accessible to the client.
TelephonyTransferCall
Represents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint.
JSON representation
{// Union field endpoint can be only one of the following:"phoneNumber": string,"sipUri": string// End of list of possible types for union field endpoint.}
Fields
Union field endpoint. Endpoint to transfer the call to. endpoint can be only one of the following:
phoneNumber
string
Transfer the call to a phone number in E.164 format.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-27 UTC."],[[["\u003cp\u003eThe document outlines the various types of response messages an automated agent can send, including text, custom payloads, and handoffs to live agents.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003emessage\u003c/code\u003e field in the JSON representation can be one of several types, such as \u003ccode\u003etext\u003c/code\u003e, \u003ccode\u003epayload\u003c/code\u003e, \u003ccode\u003eliveAgentHandoff\u003c/code\u003e, \u003ccode\u003eendInteraction\u003c/code\u003e, \u003ccode\u003emixedAudio\u003c/code\u003e, or \u003ccode\u003etelephonyTransferCall\u003c/code\u003e, representing the rich response.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eMixedAudio\u003c/code\u003e responses combine segments of audio generated by the agent with audio from external sources, defined by a list of \u003ccode\u003eSegment\u003c/code\u003e objects.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eTelephonyTransferCall\u003c/code\u003e responses can direct the client to transfer the call to either a phone number in E.164 format or a SIP URI, depending on the value of the \u003ccode\u003eendpoint\u003c/code\u003e field.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eLiveAgentHandoff\u003c/code\u003e response type signals that the conversation should be transferred to a human agent, and it allows custom metadata for handoff procedures.\u003c/p\u003e\n"]]],[],null,["# ResponseMessage\n\n- [JSON representation](#SCHEMA_REPRESENTATION)\n- [Text](#Text)\n - [JSON representation](#Text.SCHEMA_REPRESENTATION)\n- [LiveAgentHandoff](#LiveAgentHandoff)\n - [JSON representation](#LiveAgentHandoff.SCHEMA_REPRESENTATION)\n- [EndInteraction](#EndInteraction)\n- [MixedAudio](#MixedAudio)\n - [JSON representation](#MixedAudio.SCHEMA_REPRESENTATION)\n- [Segment](#Segment)\n - [JSON representation](#Segment.SCHEMA_REPRESENTATION)\n- [TelephonyTransferCall](#TelephonyTransferCall)\n - [JSON representation](#TelephonyTransferCall.SCHEMA_REPRESENTATION)\n\nResponse messages from an automated agent.\n\nText\n----\n\nThe text response message.\n\nLiveAgentHandoff\n----------------\n\nIndicates that the conversation should be handed off to a human agent.\n\nDialogflow only uses this to determine which conversations were handed off to a human agent for measurement purposes. What else to do with this signal is up to you and your handoff procedures.\n\nYou may set this, for example:\n\n- In the entry fulfillment of a Dialogflow CX Page if entering the page indicates something went extremely wrong in the conversation.\n- In a webhook response when you determine that the customer issue can only be handled by a human.\n\nEndInteraction\n--------------\n\nThis type has no fields.\nIndicates that interaction with the Dialogflow agent has ended.\n\nMixedAudio\n----------\n\nRepresents an audio message that is composed of both segments synthesized from the Dialogflow agent prompts and ones hosted externally at the specified URIs.\n\nSegment\n-------\n\nRepresents one segment of audio.\n\nTelephonyTransferCall\n---------------------\n\nRepresents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint."]]