Package google.cloud.dialogflow.cx.v3

Index

Agents

Service for managing Agents.

CreateAgent

rpc CreateAgent(CreateAgentRequest) returns (Agent)

Creates an agent in the specified location.

Note: You should always train flows prior to sending them queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteAgent

rpc DeleteAgent(DeleteAgentRequest) returns (Empty)

Deletes the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ExportAgent

rpc ExportAgent(ExportAgentRequest) returns (Operation)

Exports the specified agent to a binary file.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetAgent

rpc GetAgent(GetAgentRequest) returns (Agent)

Retrieves the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetAgentValidationResult

rpc GetAgentValidationResult(GetAgentValidationResultRequest) returns (AgentValidationResult)

Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetGenerativeSettings

rpc GetGenerativeSettings(GetGenerativeSettingsRequest) returns (GenerativeSettings)

Gets the generative settings for the agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListAgents

rpc ListAgents(ListAgentsRequest) returns (ListAgentsResponse)

Returns the list of all agents in the specified location.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

RestoreAgent

rpc RestoreAgent(RestoreAgentRequest) returns (Operation)

Restores the specified agent from a binary file.

Replaces the current agent with a new one. Note that all existing resources in agent (e.g. intents, entity types, flows) will be removed.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Note: You should always train flows prior to sending them queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateAgent

rpc UpdateAgent(UpdateAgentRequest) returns (Agent)

Updates the specified agent.

Note: You should always train flows prior to sending them queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateGenerativeSettings

rpc UpdateGenerativeSettings(UpdateGenerativeSettingsRequest) returns (GenerativeSettings)

Updates the generative settings for the agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ValidateAgent

rpc ValidateAgent(ValidateAgentRequest) returns (AgentValidationResult)

Validates the specified agent and creates or updates validation results. The agent in draft version is validated. Please call this API after the training is completed to get the complete validation results.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Changelogs

Service for managing Changelogs.

GetChangelog

rpc GetChangelog(GetChangelogRequest) returns (Changelog)

Retrieves the specified Changelog.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListChangelogs

rpc ListChangelogs(ListChangelogsRequest) returns (ListChangelogsResponse)

Returns the list of Changelogs.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Deployments

Service for managing Deployments.

GetDeployment

rpc GetDeployment(GetDeploymentRequest) returns (Deployment)

Retrieves the specified Deployment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListDeployments

rpc ListDeployments(ListDeploymentsRequest) returns (ListDeploymentsResponse)

Returns the list of all deployments in the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

EntityTypes

Service for managing EntityTypes.

CreateEntityType

rpc CreateEntityType(CreateEntityTypeRequest) returns (EntityType)

Creates an entity type in the specified agent.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteEntityType

rpc DeleteEntityType(DeleteEntityTypeRequest) returns (Empty)

Deletes the specified entity type.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ExportEntityTypes

rpc ExportEntityTypes(ExportEntityTypesRequest) returns (Operation)

Exports the selected entity types.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetEntityType

rpc GetEntityType(GetEntityTypeRequest) returns (EntityType)

Retrieves the specified entity type.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ImportEntityTypes

rpc ImportEntityTypes(ImportEntityTypesRequest) returns (Operation)

Imports the specified entitytypes into the agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListEntityTypes

rpc ListEntityTypes(ListEntityTypesRequest) returns (ListEntityTypesResponse)

Returns the list of all entity types in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateEntityType

rpc UpdateEntityType(UpdateEntityTypeRequest) returns (EntityType)

Updates the specified entity type.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Environments

Service for managing Environments.

CreateEnvironment

rpc CreateEnvironment(CreateEnvironmentRequest) returns (Operation)

Creates an Environment in the specified Agent.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteEnvironment

rpc DeleteEnvironment(DeleteEnvironmentRequest) returns (Empty)

Deletes the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeployFlow

rpc DeployFlow(DeployFlowRequest) returns (Operation)

Deploys a flow to the specified Environment.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetEnvironment

rpc GetEnvironment(GetEnvironmentRequest) returns (Environment)

Retrieves the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListContinuousTestResults

rpc ListContinuousTestResults(ListContinuousTestResultsRequest) returns (ListContinuousTestResultsResponse)

Fetches a list of continuous test results for a given environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListEnvironments

rpc ListEnvironments(ListEnvironmentsRequest) returns (ListEnvironmentsResponse)

Returns the list of all environments in the specified Agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

LookupEnvironmentHistory

rpc LookupEnvironmentHistory(LookupEnvironmentHistoryRequest) returns (LookupEnvironmentHistoryResponse)

Looks up the history of the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

RunContinuousTest

rpc RunContinuousTest(RunContinuousTestRequest) returns (Operation)

Kicks off a continuous test under the specified Environment.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateEnvironment

rpc UpdateEnvironment(UpdateEnvironmentRequest) returns (Operation)

Updates the specified Environment.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Experiments

Service for managing Experiments.

CreateExperiment

rpc CreateExperiment(CreateExperimentRequest) returns (Experiment)

Creates an Experiment in the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteExperiment

rpc DeleteExperiment(DeleteExperimentRequest) returns (Empty)

Deletes the specified Experiment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetExperiment

rpc GetExperiment(GetExperimentRequest) returns (Experiment)

Retrieves the specified Experiment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListExperiments

rpc ListExperiments(ListExperimentsRequest) returns (ListExperimentsResponse)

Returns the list of all experiments in the specified Environment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

StartExperiment

rpc StartExperiment(StartExperimentRequest) returns (Experiment)

Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

StopExperiment

rpc StopExperiment(StopExperimentRequest) returns (Experiment)

Stops the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateExperiment

rpc UpdateExperiment(UpdateExperimentRequest) returns (Experiment)

Updates the specified Experiment.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Flows

Service for managing Flows.

CreateFlow

rpc CreateFlow(CreateFlowRequest) returns (Flow)

Creates a flow in the specified agent.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteFlow

rpc DeleteFlow(DeleteFlowRequest) returns (Empty)

Deletes a specified flow.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ExportFlow

rpc ExportFlow(ExportFlowRequest) returns (Operation)

Exports the specified flow to a binary file.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Note that resources (e.g. intents, entities, webhooks) that the flow references will also be exported.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetFlow

rpc GetFlow(GetFlowRequest) returns (Flow)

Retrieves the specified flow.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetFlowValidationResult

rpc GetFlowValidationResult(GetFlowValidationResultRequest) returns (FlowValidationResult)

Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ImportFlow

rpc ImportFlow(ImportFlowRequest) returns (Operation)

Imports the specified flow to the specified agent from a binary file.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListFlows

rpc ListFlows(ListFlowsRequest) returns (ListFlowsResponse)

Returns the list of all flows in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

TrainFlow

rpc TrainFlow(TrainFlowRequest) returns (Operation)

Trains the specified flow. Note that only the flow in 'draft' environment is trained.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateFlow

rpc UpdateFlow(UpdateFlowRequest) returns (Flow)

Updates the specified flow.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ValidateFlow

rpc ValidateFlow(ValidateFlowRequest) returns (FlowValidationResult)

Validates the specified flow and creates or updates validation results. Please call this API after the training is completed to get the complete validation results.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Generators

Service for managing Generators

CreateGenerator

rpc CreateGenerator(CreateGeneratorRequest) returns (Generator)

Creates a generator in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteGenerator

rpc DeleteGenerator(DeleteGeneratorRequest) returns (Empty)

Deletes the specified generators.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetGenerator

rpc GetGenerator(GetGeneratorRequest) returns (Generator)

Retrieves the specified generator.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListGenerators

rpc ListGenerators(ListGeneratorsRequest) returns (ListGeneratorsResponse)

Returns the list of all generators in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateGenerator

rpc UpdateGenerator(UpdateGeneratorRequest) returns (Generator)

Update the specified generator.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Intents

Service for managing Intents.

CreateIntent

rpc CreateIntent(CreateIntentRequest) returns (Intent)

Creates an intent in the specified agent.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteIntent

rpc DeleteIntent(DeleteIntentRequest) returns (Empty)

Deletes the specified intent.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ExportIntents

rpc ExportIntents(ExportIntentsRequest) returns (Operation)

Exports the selected intents.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetIntent

rpc GetIntent(GetIntentRequest) returns (Intent)

Retrieves the specified intent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ImportIntents

rpc ImportIntents(ImportIntentsRequest) returns (Operation)

Imports the specified intents into the agent.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListIntents

rpc ListIntents(ListIntentsRequest) returns (ListIntentsResponse)

Returns the list of all intents in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateIntent

rpc UpdateIntent(UpdateIntentRequest) returns (Intent)

Updates the specified intent.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Pages

Service for managing Pages.

CreatePage

rpc CreatePage(CreatePageRequest) returns (Page)

Creates a page in the specified flow.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeletePage

rpc DeletePage(DeletePageRequest) returns (Empty)

Deletes the specified page.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetPage

rpc GetPage(GetPageRequest) returns (Page)

Retrieves the specified page.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListPages

rpc ListPages(ListPagesRequest) returns (ListPagesResponse)

Returns the list of all pages in the specified flow.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdatePage

rpc UpdatePage(UpdatePageRequest) returns (Page)

Updates the specified page.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

SecuritySettingsService

Service for managing security settings for Dialogflow.

CreateSecuritySettings

rpc CreateSecuritySettings(CreateSecuritySettingsRequest) returns (SecuritySettings)

Create security settings in the specified location.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteSecuritySettings

rpc DeleteSecuritySettings(DeleteSecuritySettingsRequest) returns (Empty)

Deletes the specified SecuritySettings.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetSecuritySettings

rpc GetSecuritySettings(GetSecuritySettingsRequest) returns (SecuritySettings)

Retrieves the specified SecuritySettings. The returned settings may be stale by up to 1 minute.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListSecuritySettings

rpc ListSecuritySettings(ListSecuritySettingsRequest) returns (ListSecuritySettingsResponse)

Returns the list of all security settings in the specified location.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateSecuritySettings

rpc UpdateSecuritySettings(UpdateSecuritySettingsRequest) returns (SecuritySettings)

Updates the specified SecuritySettings.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

SessionEntityTypes

Service for managing SessionEntityTypes.

CreateSessionEntityType

rpc CreateSessionEntityType(CreateSessionEntityTypeRequest) returns (SessionEntityType)

Creates a session entity type.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteSessionEntityType

rpc DeleteSessionEntityType(DeleteSessionEntityTypeRequest) returns (Empty)

Deletes the specified session entity type.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetSessionEntityType

rpc GetSessionEntityType(GetSessionEntityTypeRequest) returns (SessionEntityType)

Retrieves the specified session entity type.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListSessionEntityTypes

rpc ListSessionEntityTypes(ListSessionEntityTypesRequest) returns (ListSessionEntityTypesResponse)

Returns the list of all session entity types in the specified session.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateSessionEntityType

rpc UpdateSessionEntityType(UpdateSessionEntityTypeRequest) returns (SessionEntityType)

Updates the specified session entity type.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Sessions

A session represents an interaction with a user. You retrieve user input and pass it to the DetectIntent method to determine user intent and respond.

DetectIntent

rpc DetectIntent(DetectIntentRequest) returns (DetectIntentResponse)

Processes a natural language query and returns structured, actionable data as a result. This method is not idempotent, because it may cause session entity types to be updated, which in turn might affect results of future queries.

Note: Always use agent versions for production traffic. See Versions and environments.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

FulfillIntent

rpc FulfillIntent(FulfillIntentRequest) returns (FulfillIntentResponse)

Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

MatchIntent

rpc MatchIntent(MatchIntentRequest) returns (MatchIntentResponse)

Returns preliminary intent match results, doesn't change the session status.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ServerStreamingDetectIntent

rpc ServerStreamingDetectIntent(DetectIntentRequest) returns (DetectIntentResponse)

Processes a natural language query and returns structured, actionable data as a result through server-side streaming. Server-side streaming allows Dialogflow to send partial responses earlier in a single request.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

StreamingDetectIntent

rpc StreamingDetectIntent(StreamingDetectIntentRequest) returns (StreamingDetectIntentResponse)

Processes a natural language query in audio format in a streaming fashion and returns structured, actionable data as a result. This method is only available via the gRPC API (not REST).

Note: Always use agent versions for production traffic. See Versions and environments.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

SubmitAnswerFeedback

rpc SubmitAnswerFeedback(SubmitAnswerFeedbackRequest) returns (AnswerFeedback)

Updates the feedback received from the user for a single turn of the bot response.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

TestCases

Service for managing Test Cases and Test Case Results.

BatchDeleteTestCases

rpc BatchDeleteTestCases(BatchDeleteTestCasesRequest) returns (Empty)

Batch deletes test cases.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

BatchRunTestCases

rpc BatchRunTestCases(BatchRunTestCasesRequest) returns (Operation)

Kicks off a batch run of test cases.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

CalculateCoverage

rpc CalculateCoverage(CalculateCoverageRequest) returns (CalculateCoverageResponse)

Calculates the test coverage for an agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

CreateTestCase

rpc CreateTestCase(CreateTestCaseRequest) returns (TestCase)

Creates a test case for the given agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ExportTestCases

rpc ExportTestCases(ExportTestCasesRequest) returns (Operation)

Exports the test cases under the agent to a Cloud Storage bucket or a local file. Filter can be applied to export a subset of test cases.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetTestCase

rpc GetTestCase(GetTestCaseRequest) returns (TestCase)

Gets a test case.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetTestCaseResult

rpc GetTestCaseResult(GetTestCaseResultRequest) returns (TestCaseResult)

Gets a test case result.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ImportTestCases

rpc ImportTestCases(ImportTestCasesRequest) returns (Operation)

Imports the test cases from a Cloud Storage bucket or a local file. It always creates new test cases and won't overwrite any existing ones. The provided ID in the imported test case is neglected.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListTestCaseResults

rpc ListTestCaseResults(ListTestCaseResultsRequest) returns (ListTestCaseResultsResponse)

Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListTestCases

rpc ListTestCases(ListTestCasesRequest) returns (ListTestCasesResponse)

Fetches a list of test cases for a given agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

RunTestCase

rpc RunTestCase(RunTestCaseRequest) returns (Operation)

Kicks off a test case run.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateTestCase

rpc UpdateTestCase(UpdateTestCaseRequest) returns (TestCase)

Updates the specified test case.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

TransitionRouteGroups

Service for managing TransitionRouteGroups.

CreateTransitionRouteGroup

rpc CreateTransitionRouteGroup(CreateTransitionRouteGroupRequest) returns (TransitionRouteGroup)

Creates an TransitionRouteGroup in the specified flow.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteTransitionRouteGroup

rpc DeleteTransitionRouteGroup(DeleteTransitionRouteGroupRequest) returns (Empty)

Deletes the specified TransitionRouteGroup.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetTransitionRouteGroup

rpc GetTransitionRouteGroup(GetTransitionRouteGroupRequest) returns (TransitionRouteGroup)

Retrieves the specified TransitionRouteGroup.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListTransitionRouteGroups

rpc ListTransitionRouteGroups(ListTransitionRouteGroupsRequest) returns (ListTransitionRouteGroupsResponse)

Returns the list of all transition route groups in the specified flow.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateTransitionRouteGroup

rpc UpdateTransitionRouteGroup(UpdateTransitionRouteGroupRequest) returns (TransitionRouteGroup)

Updates the specified TransitionRouteGroup.

Note: You should always train a flow prior to sending it queries. See the training documentation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Versions

Service for managing Versions.

CompareVersions

rpc CompareVersions(CompareVersionsRequest) returns (CompareVersionsResponse)

Compares the specified base version with target version.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

CreateVersion

rpc CreateVersion(CreateVersionRequest) returns (Operation)

Creates a Version in the specified Flow.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteVersion

rpc DeleteVersion(DeleteVersionRequest) returns (Empty)

Deletes the specified Version.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetVersion

rpc GetVersion(GetVersionRequest) returns (Version)

Retrieves the specified Version.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListVersions

rpc ListVersions(ListVersionsRequest) returns (ListVersionsResponse)

Returns the list of all versions in the specified Flow.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

LoadVersion

rpc LoadVersion(LoadVersionRequest) returns (Operation)

Loads resources in the specified version to the draft flow.

This method is a long-running operation. The returned Operation type has the following method-specific fields:

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateVersion

rpc UpdateVersion(UpdateVersionRequest) returns (Version)

Updates the specified Version.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

Webhooks

Service for managing Webhooks.

CreateWebhook

rpc CreateWebhook(CreateWebhookRequest) returns (Webhook)

Creates a webhook in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

DeleteWebhook

rpc DeleteWebhook(DeleteWebhookRequest) returns (Empty)

Deletes the specified webhook.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

GetWebhook

rpc GetWebhook(GetWebhookRequest) returns (Webhook)

Retrieves the specified webhook.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

ListWebhooks

rpc ListWebhooks(ListWebhooksRequest) returns (ListWebhooksResponse)

Returns the list of all webhooks in the specified agent.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

UpdateWebhook

rpc UpdateWebhook(UpdateWebhookRequest) returns (Webhook)

Updates the specified webhook.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/dialogflow

For more information, see the Authentication Overview.

AdvancedSettings

Hierarchical advanced settings for agent/flow/page/fulfillment/parameter. Settings exposed at lower level overrides the settings exposed at higher level. Overriding occurs at the sub-setting level. For example, the playback_interruption_settings at fulfillment level only overrides the playback_interruption_settings at the agent level, leaving other settings at the agent level unchanged.

DTMF settings does not override each other. DTMF settings set at different levels define DTMF detections running in parallel.

Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.

Fields
audio_export_gcs_destination

GcsDestination

If present, incoming audio is exported by Dialogflow to the configured Google Cloud Storage destination. Exposed at the following levels: - Agent level - Flow level

speech_settings

SpeechSettings

Settings for speech to text detection. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level

dtmf_settings

DtmfSettings

Settings for DTMF. Exposed at the following levels: - Agent level - Flow level - Page level - Parameter level.

logging_settings

LoggingSettings

Settings for logging. Settings for Dialogflow History, Contact Center messages, StackDriver logs, and speech logging. Exposed at the following levels: - Agent level.

DtmfSettings

Define behaviors for DTMF (dual tone multi frequency).

Fields
enabled

bool

If true, incoming audio is processed for DTMF (dual tone multi frequency) events. For example, if the caller presses a button on their telephone keypad and DTMF processing is enabled, Dialogflow will detect the event (e.g. a "3" was pressed) in the incoming audio and pass the event to the bot to drive business logic (e.g. when 3 is pressed, return the account balance).

max_digits

int32

Max length of DTMF digits.

finish_digit

string

The digit that terminates a DTMF digit sequence.

interdigit_timeout_duration

Duration

Interdigit timeout setting for matching dtmf input to regex.

endpointing_timeout_duration

Duration

Endpoint timeout setting for matching dtmf input to regex.

LoggingSettings

Define behaviors on logging.

Fields
enable_stackdriver_logging

bool

Enables Google Cloud Logging.

enable_interaction_logging

bool

Enables DF Interaction logging.

SpeechSettings

Define behaviors of speech to text detection.

Fields
endpointer_sensitivity

int32

Sensitivity of the speech model that detects the end of speech. Scale from 0 to 100.

no_speech_timeout

Duration

Timeout before detecting no speech.

use_timeout_based_endpointing

bool

Use timeout based endpointing, interpreting endpointer sensitivy as seconds of timeout value.

models

map<string, string>

Mapping from language to Speech-to-Text model. The mapped Speech-to-Text model will be selected for requests from its corresponding language. For more information, see Speech models.

Agent

Agents are best described as Natural Language Understanding (NLU) modules that transform user requests into actionable data. You can include agents in your app, product, or service to determine user intent and respond to the user in a natural way.

After you create an agent, you can add Intents, Entity Types, Flows, Fulfillments, Webhooks, TransitionRouteGroups and so on to manage the conversation flows.

Fields
name

string

The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

display_name

string

Required. The human-readable name of the agent, unique within the location.

default_language_code

string

Required. Immutable. The default language of the agent as a language tag. See Language Support for a list of the currently supported language codes. This field cannot be set by the Agents.UpdateAgent method.

supported_language_codes[]

string

The list of all languages supported by the agent (except for the default_language_code).

time_zone

string

Required. The time zone of the agent from the time zone database, e.g., America/New_York, Europe/Paris.

description

string

The description of the agent. The maximum length is 500 characters. If exceeded, the request is rejected.

avatar_uri

string

The URI of the agent's avatar. Avatars are used throughout the Dialogflow console and in the self-hosted Web Demo integration.

speech_to_text_settings

SpeechToTextSettings

Speech recognition related settings.

start_flow

string

Immutable. Name of the start flow in this agent. A start flow will be automatically created when the agent is created, and can only be deleted by deleting the agent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

security_settings

string

Name of the SecuritySettings reference for the agent. Format: projects/<ProjectID>/locations/<LocationID>/securitySettings/<SecuritySettingsID>.

enable_stackdriver_logging
(deprecated)

bool

Indicates if stackdriver logging is enabled for the agent. Please use agent.advanced_settings instead.

enable_spell_correction

bool

Indicates if automatic spell correction is enabled in detect intent requests.

enable_multi_language_training

bool

Optional. Enable training multi-lingual models for this agent. These models will be trained on all the languages supported by the agent.

locked

bool

Indicates whether the agent is locked for changes. If the agent is locked, modifications to the agent will be rejected except for [RestoreAgent][].

advanced_settings

AdvancedSettings

Hierarchical advanced settings for this agent. The settings exposed at the lower level overrides the settings exposed at the higher level.

git_integration_settings

GitIntegrationSettings

Git integration settings for this agent.

text_to_speech_settings

TextToSpeechSettings

Settings on instructing the speech synthesizer on how to generate the output audio content.

answer_feedback_settings

AnswerFeedbackSettings

Optional. Answer feedback collection settings.

personalization_settings

PersonalizationSettings

Optional. Settings for end user personalization.

client_certificate_settings

ClientCertificateSettings

Optional. Settings for custom client certificates.

gen_app_builder_settings

GenAppBuilderSettings

Gen App Builder-related agent-level settings.

AnswerFeedbackSettings

Settings for answer feedback collection.

Fields
enable_answer_feedback

bool

Optional. If enabled, end users will be able to provide answer feedback to Dialogflow responses. Feature works only if interaction logging is enabled in the Dialogflow agent.

ClientCertificateSettings

Settings for custom client certificates.

Fields
ssl_certificate

string

Required. The ssl certificate encoded in PEM format. This string must include the begin header and end footer lines.

private_key

string

Required. The name of the SecretManager secret version resource storing the private key encoded in PEM format. Format: projects/{project}/secrets/{secret}/versions/{version}

passphrase

string

Optional. The name of the SecretManager secret version resource storing the passphrase. 'passphrase' should be left unset if the private key is not encrypted. Format: projects/{project}/secrets/{secret}/versions/{version}

GenAppBuilderSettings

Settings for Gen App Builder.

Fields
engine

string

Required. The full name of the Gen App Builder engine related to this agent if there is one. Format: projects/{Project ID}/locations/{Location ID}/collections/{Collection ID}/engines/{Engine ID}

GitIntegrationSettings

Settings for connecting to Git repository for an agent.

Fields
Union field git_settings. The git settings to specific systems. git_settings can be only one of the following:
github_settings

GithubSettings

GitHub settings.

GithubSettings

Settings of integration with GitHub.

Fields
display_name

string

The unique repository display name for the GitHub repository.

repository_uri

string

The GitHub repository URI related to the agent.

tracking_branch

string

The branch of the GitHub repository tracked for this agent.

access_token

string

The access token used to authenticate the access to the GitHub repository.

branches[]

string

A list of branches configured to be used from Dialogflow.

PersonalizationSettings

Settings for end user personalization.

Fields
default_end_user_metadata

Struct

Optional. Default end user metadata, used when processing DetectIntent requests. Recommended to be filled as a template instead of hard-coded value, for example { "age": "$session.params.age" }. The data will be merged with the QueryParameters.end_user_metadata in DetectIntentRequest.query_params during query processing.

AgentValidationResult

The response message for Agents.GetAgentValidationResult.

Fields
name

string

The unique identifier of the agent validation result. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/validationResult.

flow_validation_results[]

FlowValidationResult

Contains all flow validation results.

AnswerFeedback

Stores information about feedback provided by users about a response.

Fields
rating

Rating

Optional. Rating from user for the specific Dialogflow response.

rating_reason

RatingReason

Optional. In case of thumbs down rating provided, users can optionally provide context about the rating.

custom_rating

string

Optional. Custom rating from the user about the provided answer, with maximum length of 1024 characters. For example, client could use a customized JSON object to indicate the rating.

Rating

Represents thumbs up/down rating provided by user about a response.

Enums
RATING_UNSPECIFIED Rating not specified.
THUMBS_UP Thumbs up feedback from user.
THUMBS_DOWN Thumbs down feedback from user.

RatingReason

Stores extra information about why users provided thumbs down rating.

Fields
reason_labels[]

string

Optional. Custom reason labels for thumbs down rating provided by the user. The maximum number of labels allowed is 10 and the maximum length of a single label is 128 characters.

feedback

string

Optional. Additional feedback about the rating. This field can be populated without choosing a predefined reason.

AudioEncoding

Audio encoding of the audio content sent in the conversational query request. Refer to the Cloud Speech API documentation for more details.

Enums
AUDIO_ENCODING_UNSPECIFIED Not specified.
AUDIO_ENCODING_LINEAR_16 Uncompressed 16-bit signed little-endian samples (Linear PCM).
AUDIO_ENCODING_FLAC FLAC (Free Lossless Audio Codec) is the recommended encoding because it is lossless (therefore recognition is not compromised) and requires only about half the bandwidth of LINEAR16. FLAC stream encoding supports 16-bit and 24-bit samples, however, not all fields in STREAMINFO are supported.
AUDIO_ENCODING_MULAW 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
AUDIO_ENCODING_AMR Adaptive Multi-Rate Narrowband codec. sample_rate_hertz must be 8000.
AUDIO_ENCODING_AMR_WB Adaptive Multi-Rate Wideband codec. sample_rate_hertz must be 16000.
AUDIO_ENCODING_OGG_OPUS Opus encoded audio frames in Ogg container (OggOpus). sample_rate_hertz must be 16000.
AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE Although the use of lossy encodings is not recommended, if a very low bitrate encoding is required, OGG_OPUS is highly preferred over Speex encoding. The Speex encoding supported by Dialogflow API has a header byte in each block, as in MIME type audio/x-speex-with-header-byte. It is a variant of the RTP Speex encoding defined in RFC 5574. The stream is a sequence of blocks, one block per RTP packet. Each block starts with a byte containing the length of the block, in bytes, followed by one or more frames of Speex data, padded to an integral number of bytes (octets) as specified in RFC 5574. In other words, each RTP header is replaced with a single byte containing the block length. Only Speex wideband is supported. sample_rate_hertz must be 16000.
AUDIO_ENCODING_ALAW 8-bit samples that compand 13-bit audio samples using G.711 PCMU/a-law.

AudioInput

Represents the natural speech audio to be processed.

Fields
config

InputAudioConfig

Required. Instructs the speech recognizer how to process the speech audio.

audio

bytes

The natural language speech audio to be processed. A single request can contain up to 2 minutes of speech audio data. The transcribed text cannot contain more than 256 bytes.

For non-streaming audio detect intent, both config and audio must be provided. For streaming audio detect intent, config must be provided in the first request and audio must be provided in all following requests.

BargeInConfig

Configuration of the barge-in behavior. Barge-in instructs the API to return a detected utterance at a proper time while the client is playing back the response audio from a previous request. When the client sees the utterance, it should stop the playback and immediately get ready for receiving the responses for the current request.

The barge-in handling requires the client to start streaming audio input as soon as it starts playing back the audio from the previous response. The playback is modeled into two phases:

  • No barge-in phase: which goes first and during which speech detection should not be carried out.

  • Barge-in phase: which follows the no barge-in phase and during which the API starts speech detection and may inform the client that an utterance has been detected. Note that no-speech event is not expected in this phase.

The client provides this configuration in terms of the durations of those two phases. The durations are measured in terms of the audio length from the start of the input audio.

No-speech event is a response with END_OF_UTTERANCE without any transcript following up.

Fields
no_barge_in_duration

Duration

Duration that is not eligible for barge-in at the beginning of the input audio.

total_duration

Duration

Total duration for the playback at the beginning of the input audio.

BatchDeleteTestCasesRequest

The request message for TestCases.BatchDeleteTestCases.

Fields
parent

string

Required. The agent to delete test cases from. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.delete
names[]

string

Required. Format of test case names: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

BatchRunTestCasesMetadata

Metadata returned for the TestCases.BatchRunTestCases long running operation.

Fields
errors[]

TestError

The test errors.

BatchRunTestCasesRequest

The request message for TestCases.BatchRunTestCases.

Fields
parent

string

Required. Agent name. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

environment

string

Optional. If not set, draft environment is assumed. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

test_cases[]

string

Required. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

BatchRunTestCasesResponse

The response message for TestCases.BatchRunTestCases.

Fields
results[]

TestCaseResult

The test case results. The detailed conversation turns are empty in this response.

BoostSpec

Boost specification to boost certain documents. A copy of google.cloud.discoveryengine.v1main.BoostSpec, field documentation is available at https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1alpha/BoostSpec

Fields
condition_boost_specs[]

ConditionBoostSpec

Optional. Condition boost specifications. If a document matches multiple conditions in the specifictions, boost scores from these specifications are all applied and combined in a non-linear way. Maximum number of specifications is 20.

ConditionBoostSpec

Boost applies to documents which match a condition.

Fields
condition

string

Optional. An expression which specifies a boost condition. The syntax and supported fields are the same as a filter expression. Examples:

  • To boost documents with document ID "doc_1" or "doc_2", and color "Red" or "Blue":
    • (id: ANY("doc_1", "doc_2")) AND (color: ANY("Red","Blue"))
boost

float

Optional. Strength of the condition boost, which should be in [-1, 1]. Negative boost means demotion. Default is 0.0.

Setting to 1.0 gives the document a big promotion. However, it does not necessarily mean that the boosted document will be the top result at all times, nor that other documents will be excluded. Results could still be shown even when none of them matches the condition. And results that are significantly more relevant to the search query can still trump your heavily favored but irrelevant documents.

Setting to -1.0 gives the document a big demotion. However, results that are deeply relevant might still be shown. The document will have an upstream battle to get a fairly high ranking, but it is not blocked out completely.

Setting to 0.0 means no boost applied. The boosting condition is ignored.

boost_control_spec

BoostControlSpec

Optional. Complex specification for custom ranking based on customer defined attribute value.

BoostControlSpec

Specification for custom ranking based on customer specified attribute value. It provides more controls for customized ranking than the simple (condition, boost) combination above.

Fields
field_name

string

Optional. The name of the field whose value will be used to determine the boost amount.

attribute_type

AttributeType

Optional. The attribute type to be used to determine the boost amount. The attribute value can be derived from the field value of the specified field_name. In the case of numerical it is straightforward i.e. attribute_value = numerical_field_value. In the case of freshness however, attribute_value = (time.now() - datetime_field_value).

interpolation_type

InterpolationType

Optional. The interpolation type to be applied to connect the control points listed below.

control_points[]

ControlPoint

Optional. The control points used to define the curve. The monotonic function (defined through the interpolation_type above) passes through the control points listed here.

AttributeType

The attribute(or function) for which the custom ranking is to be applied.

Enums
ATTRIBUTE_TYPE_UNSPECIFIED Unspecified AttributeType.
NUMERICAL The value of the numerical field will be used to dynamically update the boost amount. In this case, the attribute_value (the x value) of the control point will be the actual value of the numerical field for which the boost_amount is specified.
FRESHNESS For the freshness use case the attribute value will be the duration between the current time and the date in the datetime field specified. The value must be formatted as an XSD dayTimeDuration value (a restricted subset of an ISO 8601 duration value). The pattern for this is: [nD][T[nH][nM][nS]]. E.g. 5D, 3DT12H30M, T24H.

ControlPoint

The control points used to define the curve. The curve defined through these control points can only be monotonically increasing or decreasing(constant values are acceptable).

Fields
attribute_value

string

Optional. Can be one of: 1. The numerical field value. 2. The duration spec for freshness: The value must be formatted as an XSD dayTimeDuration value (a restricted subset of an ISO 8601 duration value). The pattern for this is: [nD][T[nH][nM][nS]].

boost_amount

float

Optional. The value between -1 to 1 by which to boost the score if the attribute_value evaluates to the value specified above.

InterpolationType

The interpolation type to be applied. Default will be linear (Piecewise Linear).

Enums
INTERPOLATION_TYPE_UNSPECIFIED Interpolation type is unspecified. In this case, it defaults to Linear.
LINEAR Piecewise linear interpolation will be applied.

BoostSpecs

Boost specifications for data stores.

Fields
data_stores[]

string

Optional. Data Stores where the boosting configuration is applied. The full names of the referenced data stores. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store} projects/{project}/locations/{location}/dataStores/{data_store}

spec[]

BoostSpec

Optional. A list of boosting specifications.

CalculateCoverageRequest

The request message for TestCases.CalculateCoverage.

Fields
agent

string

Required. The agent to calculate coverage for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource agent:

  • dialogflow.testcases.calculateCoverage
type

CoverageType

Required. The type of coverage requested.

CoverageType

The type of coverage score requested.

Enums
COVERAGE_TYPE_UNSPECIFIED Should never be used.
INTENT Intent coverage.
PAGE_TRANSITION Page transition coverage.
TRANSITION_ROUTE_GROUP Transition route group coverage.

CalculateCoverageResponse

The response message for TestCases.CalculateCoverage.

Fields
agent

string

The agent to calculate coverage for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Union field coverage_type. The type of coverage requested. coverage_type can be only one of the following:
intent_coverage

IntentCoverage

Intent coverage.

transition_coverage

TransitionCoverage

Transition (excluding transition route groups) coverage.

route_group_coverage

TransitionRouteGroupCoverage

Transition route group coverage.

Changelog

Changelogs represents a change made to a given agent.

Fields
name

string

The unique identifier of the changelog. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/changelogs/<ChangelogID>.

user_email

string

Email address of the authenticated user.

display_name

string

The affected resource display name of the change.

action

string

The action of the change.

type

string

The affected resource type.

resource

string

The affected resource name of the change.

create_time

Timestamp

The timestamp of the change.

language_code

string

The affected language code of the change.

CloudConversationDebuggingInfo

Cloud conversation info for easier debugging. It will get populated in StreamingDetectIntentResponse or StreamingAnalyzeContentResponse when the flag enable_debugging_info is set to true in corresponding requests.

Fields
audio_data_chunks

int32

Number of input audio data chunks in streaming requests.

result_end_time_offset

Duration

Time offset of the end of speech utterance relative to the beginning of the first audio chunk.

first_audio_duration

Duration

Duration of first audio chunk.

single_utterance

bool

Whether client used single utterance mode.

speech_partial_results_end_times[]

Duration

Time offsets of the speech partial results relative to the beginning of the stream.

speech_final_results_end_times[]

Duration

Time offsets of the speech final results (is_final=true) relative to the beginning of the stream.

partial_responses

int32

Total number of partial responses.

speaker_id_passive_latency_ms_offset

int32

Time offset of Speaker ID stream close time relative to the Speech stream close time in milliseconds. Only meaningful for conversations involving passive verification.

bargein_event_triggered

bool

Whether a barge-in event is triggered in this request.

speech_single_utterance

bool

Whether speech uses single utterance mode.

dtmf_partial_results_times[]

Duration

Time offsets of the DTMF partial results relative to the beginning of the stream.

dtmf_final_results_times[]

Duration

Time offsets of the DTMF final results relative to the beginning of the stream.

single_utterance_end_time_offset

Duration

Time offset of the end-of-single-utterance signal relative to the beginning of the stream.

no_speech_timeout

Duration

No speech timeout settings for the stream.

endpointing_timeout

Duration

Speech endpointing timeout settings for the stream.

is_input_text

bool

Whether the streaming terminates with an injected text query.

client_half_close_time_offset

Duration

Client half close time in terms of input audio duration.

client_half_close_streaming_time_offset

Duration

Client half close time in terms of API streaming duration.

CompareVersionsRequest

The request message for Versions.CompareVersions.

Fields
base_version

string

Required. Name of the base flow version to compare with the target version. Use version ID 0 to indicate the draft version of the specified flow.

Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

Authorization requires the following IAM permission on the specified resource baseVersion:

  • dialogflow.versions.get
target_version

string

Required. Name of the target flow version to compare with the base version. Use version ID 0 to indicate the draft version of the specified flow. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

Authorization requires the following IAM permission on the specified resource targetVersion:

  • dialogflow.versions.get
language_code

string

The language to compare the flow versions for.

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CompareVersionsResponse

The response message for Versions.CompareVersions.

Fields
base_version_content_json

string

JSON representation of the base version content.

target_version_content_json

string

JSON representation of the target version content.

compare_time

Timestamp

The timestamp when the two version compares.

ContinuousTestResult

Represents a result from running a test case in an agent environment.

Fields
name

string

The resource name for the continuous test result. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/continuousTestResults/<ContinuousTestResultID>.

result

AggregatedTestResult

The result of this continuous test run, i.e. whether all the tests in this continuous test run pass or not.

test_case_results[]

string

A list of individual test case results names in this continuous test run.

run_time

Timestamp

Time when the continuous testing run starts.

AggregatedTestResult

The overall result for a continuous test run in an agent environment.

Enums
AGGREGATED_TEST_RESULT_UNSPECIFIED Not specified. Should never be used.
PASSED All the tests passed.
FAILED At least one test did not pass.

ConversationSignals

This message is used to hold all the Conversation Signals data, which will be converted to JSON and exported to BigQuery.

Fields
turn_signals

TurnSignals

Required. Turn signals for the current turn.

ConversationTurn

One interaction between a human and virtual agent. The human provides some input and the virtual agent provides a response.

Fields
user_input

UserInput

The user input.

virtual_agent_output

VirtualAgentOutput

The virtual agent output.

UserInput

The input from the human user.

Fields
input

QueryInput

Supports text input, event input, dtmf input in the test case.

injected_parameters

Struct

Parameters that need to be injected into the conversation during intent detection.

is_webhook_enabled

bool

If webhooks should be allowed to trigger in response to the user utterance. Often if parameters are injected, webhooks should not be enabled.

enable_sentiment_analysis

bool

Whether sentiment analysis is enabled.

VirtualAgentOutput

The output from the virtual agent.

Fields
session_parameters

Struct

The session parameters available to the bot at this point.

differences[]

TestRunDifference

Output only. If this is part of a [result conversation turn][TestCaseResult.conversation_turns], the list of differences between the original run and the replay for this output, if any.

diagnostic_info

Struct

Required. Input only. The diagnostic [info][Session.DetectIntentResponse.QueryResult.diagnostic_info] output for the turn. Required to calculate the testing coverage.

triggered_intent

Intent

The Intent that triggered the response. Only name and displayName will be set.

current_page

Page

The Page on which the utterance was spoken. Only name and displayName will be set.

text_responses[]

Text

The text responses from the agent for the turn.

status

Status

Response error from the agent in the test result. If set, other output is empty.

CreateAgentRequest

The request message for Agents.CreateAgent.

Fields
parent

string

Required. The location to create a agent for. Format: projects/<ProjectID>/locations/<LocationID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.agents.create
agent

Agent

Required. The agent to create.

CreateEntityTypeRequest

The request message for EntityTypes.CreateEntityType.

Fields
parent

string

Required. The agent to create a entity type for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.entityTypes.create
entity_type

EntityType

Required. The entity type to create.

language_code

string

The language of the following fields in entity_type:

  • EntityType.entities.value
  • EntityType.entities.synonyms
  • EntityType.excluded_phrases.value

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CreateEnvironmentRequest

The request message for Environments.CreateEnvironment.

Fields
parent

string

Required. The Agent to create an Environment for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.environments.create
environment

Environment

Required. The environment to create.

CreateExperimentRequest

The request message for Experiments.CreateExperiment.

Fields
parent

string

Required. The Agent to create an Environment for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.experiments.create
experiment

Experiment

Required. The experiment to create.

CreateFlowRequest

The request message for Flows.CreateFlow.

Fields
parent

string

Required. The agent to create a flow for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.flows.create
flow

Flow

Required. The flow to create.

language_code

string

The language of the following fields in flow:

  • Flow.event_handlers.trigger_fulfillment.messages
  • Flow.event_handlers.trigger_fulfillment.conditional_cases
  • Flow.transition_routes.trigger_fulfillment.messages
  • Flow.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CreateGeneratorRequest

The request message for Generators.CreateGenerator.

Fields
parent

string

Required. The agent to create a generator for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.generators.create
generator

Generator

Required. The generator to create.

language_code

string

The language to create generators for the following fields: * Generator.prompt_text.text If not specified, the agent's default language is used.

CreateIntentRequest

The request message for Intents.CreateIntent.

Fields
parent

string

Required. The agent to create an intent for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.intents.create
intent

Intent

Required. The intent to create.

language_code

string

The language of the following fields in intent:

  • Intent.training_phrases.parts.text

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CreatePageRequest

The request message for Pages.CreatePage.

Fields
parent

string

Required. The flow to create a page for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.pages.create
page

Page

Required. The page to create.

language_code

string

The language of the following fields in page:

  • Page.entry_fulfillment.messages
  • Page.entry_fulfillment.conditional_cases
  • Page.event_handlers.trigger_fulfillment.messages
  • Page.event_handlers.trigger_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages * Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.reprompt_event_handlers.messages * Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases
  • Page.transition_routes.trigger_fulfillment.messages
  • Page.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CreateSecuritySettingsRequest

The request message for [SecuritySettings.CreateSecuritySettings][].

Fields
parent

string

Required. The location to create an SecuritySettings for. Format: projects/<ProjectID>/locations/<LocationID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.securitySettings.create
security_settings

SecuritySettings

Required. The security settings to create.

CreateSessionEntityTypeRequest

The request message for SessionEntityTypes.CreateSessionEntityType.

Fields
parent

string

Required. The session to create a session entity type for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>. If Environment ID is not specified, we assume default 'draft' environment.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.sessionEntityTypes.create
session_entity_type

SessionEntityType

Required. The session entity type to create.

CreateTestCaseRequest

The request message for TestCases.CreateTestCase.

Fields
parent

string

Required. The agent to create the test case for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.create
test_case

TestCase

Required. The test case to create.

CreateTransitionRouteGroupRequest

The request message for TransitionRouteGroups.CreateTransitionRouteGroup.

Fields
parent

string

Required. The flow to create an TransitionRouteGroup for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID> for agent-level groups.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.transitionRouteGroups.create
transition_route_group

TransitionRouteGroup

Required. The transition route group to create.

language_code

string

The language of the following fields in TransitionRouteGroup:

  • TransitionRouteGroup.transition_routes.trigger_fulfillment.messages * TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

CreateVersionOperationMetadata

Metadata associated with the long running operation for Versions.CreateVersion.

Fields
version

string

Name of the created version. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

CreateVersionRequest

The request message for Versions.CreateVersion.

Fields
parent

string

Required. The Flow to create an Version for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.versions.create
version

Version

Required. The version to create.

CreateWebhookRequest

The request message for Webhooks.CreateWebhook.

Fields
parent

string

Required. The agent to create a webhook for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.webhooks.create
webhook

Webhook

Required. The webhook to create.

DataStoreConnection

A data store connection. It represents a data store in Discovery Engine and the type of the contents it contains.

Fields
data_store_type

DataStoreType

The type of the connected data store.

data_store

string

The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store} projects/{project}/locations/{location}/dataStores/{data_store}

DataStoreConnectionSignals

Data store connection feature output signals. Might be only partially field if processing stop before the final answer. Reasons for this can be, but are not limited to: empty UCS search results, positive RAI check outcome, grounding failure, ...

Fields
rewriter_model_call_signals

RewriterModelCallSignals

Optional. Diagnostic info related to the rewriter model call.

rewritten_query

string

Optional. Rewritten string query used for search.

search_snippets[]

SearchSnippet

Optional. Search snippets included in the answer generation prompt.

answer_generation_model_call_signals

AnswerGenerationModelCallSignals

Optional. Diagnostic info related to the answer generation model call.

answer

string

Optional. The final compiled answer.

answer_parts[]

AnswerPart

Optional. Answer parts with relevant citations. Concatenation of texts should add up the answer (not counting whitespaces).

cited_snippets[]

CitedSnippet

Optional. Snippets cited by the answer generation model from the most to least relevant.

grounding_signals

GroundingSignals

Optional. Grounding signals.

safety_signals

SafetySignals

Optional. Safety check result.

AnswerGenerationModelCallSignals

Diagnostic info related to the answer generation model call.

Fields
rendered_prompt

string

Prompt as sent to the model.

model_output

string

Output of the generative model.

model

string

Name of the generative model. For example, "gemini-ultra", "gemini-pro", "gemini-1.5-flash" etc. Defaults to "Other" if the model is unknown.

AnswerPart

Answer part with citation.

Fields
text

string

Substring of the answer.

supporting_indices[]

int32

Citations for this answer part. Indices of search_snippets.

CitedSnippet

Snippet cited by the answer generation model.

Fields
search_snippet

SearchSnippet

Details of the snippet.

snippet_index

int32

Index of the snippet in search_snippets field.

GroundingSignals

Grounding signals.

Fields
decision

GroundingDecision

Represents the decision of the grounding check.

score

GroundingScoreBucket

Grounding score bucket setting.

GroundingDecision

Represents the decision of the grounding check.

Enums
GROUNDING_DECISION_UNSPECIFIED Decision not specified.
ACCEPTED_BY_GROUNDING Grounding have accepted the answer.
REJECTED_BY_GROUNDING Grounding have rejected the answer.

GroundingScoreBucket

Grounding score buckets.

Enums
GROUNDING_SCORE_BUCKET_UNSPECIFIED Score not specified.
VERY_LOW We have very low confidence that the answer is grounded.
LOW We have low confidence that the answer is grounded.
MEDIUM We have medium confidence that the answer is grounded.
HIGH We have high confidence that the answer is grounded.
VERY_HIGH We have very high confidence that the answer is grounded.

RewriterModelCallSignals

Diagnostic info related to the rewriter model call.

Fields
rendered_prompt

string

Prompt as sent to the model.

model_output

string

Output of the generative model.

model

string

Name of the generative model. For example, "gemini-ultra", "gemini-pro", "gemini-1.5-flash" etc. Defaults to "Other" if the model is unknown.

SafetySignals

Safety check results.

Fields
decision

SafetyDecision

Safety decision.

banned_phrase_match

BannedPhraseMatch

Specifies banned phrase match subject.

matched_banned_phrase

string

The matched banned phrase if there was a match.

BannedPhraseMatch

Specifies banned phrase match subject.

Enums
BANNED_PHRASE_MATCH_UNSPECIFIED No banned phrase check was executed.
BANNED_PHRASE_MATCH_NONE All banned phrase checks led to no match.
BANNED_PHRASE_MATCH_QUERY A banned phrase matched the query.
BANNED_PHRASE_MATCH_RESPONSE A banned phrase matched the response.

SafetyDecision

Safety decision. All kinds of check are incorporated into this final decision, including banned phrases check.

Enums
SAFETY_DECISION_UNSPECIFIED Decision not specified.
ACCEPTED_BY_SAFETY_CHECK No manual or automatic safety check fired.
REJECTED_BY_SAFETY_CHECK One ore more safety checks fired.

SearchSnippet

Search snippet details.

Fields
document_title

string

Title of the enclosing document.

document_uri

string

Uri for the document. Present if specified for the document.

text

string

Text included in the prompt.

DataStoreType

Type of a data store. Determines how search is performed in the data store.

Enums
DATA_STORE_TYPE_UNSPECIFIED Not specified. This value indicates that the data store type is not specified, so it will not be used during search.
PUBLIC_WEB A data store that contains public web content.
UNSTRUCTURED A data store that contains unstructured private data.
STRUCTURED A data store that contains structured data (for example FAQ).

DeleteAgentRequest

The request message for Agents.DeleteAgent.

Fields
name

string

Required. The name of the agent to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.delete

DeleteEntityTypeRequest

The request message for EntityTypes.DeleteEntityType.

Fields
name

string

Required. The name of the entity type to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.entityTypes.delete
force

bool

This field has no effect for entity type not being used. For entity types that are used by intents or pages:

  • If force is set to false, an error will be returned with message indicating the referencing resources.
  • If force is set to true, Dialogflow will remove the entity type, as well as any references to the entity type (i.e. Page parameter of the entity type will be changed to '@sys.any' and intent parameter of the entity type will be removed).

DeleteEnvironmentRequest

The request message for Environments.DeleteEnvironment.

Fields
name

string

Required. The name of the Environment to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.environments.delete

DeleteExperimentRequest

The request message for Experiments.DeleteExperiment.

Fields
name

string

Required. The name of the Environment to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/experiments/<ExperimentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.experiments.delete

DeleteFlowRequest

The request message for Flows.DeleteFlow.

Fields
name

string

Required. The name of the flow to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.delete
force

bool

This field has no effect for flows with no incoming transitions. For flows with incoming transitions:

  • If force is set to false, an error will be returned with message indicating the incoming transitions.
  • If force is set to true, Dialogflow will remove the flow, as well as any transitions to the flow (i.e. [Target flow][EventHandler.target_flow] in event handlers or [Target flow][TransitionRoute.target_flow] in transition routes that point to this flow will be cleared).

DeleteGeneratorRequest

The request message for Generators.DeleteGenerator.

Fields
name

string

Required. The name of the generator to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/generators/<GeneratorID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.generators.delete
force

bool

This field has no effect for generators not being used. For generators that are used by pages/flows/transition route groups:

  • If force is set to false, an error will be returned with message indicating the referenced resources.
  • If force is set to true, Dialogflow will remove the generator, as well as any references to the generator (i.e. [Generator][Fulfillment.generator]) in fulfillments.

DeleteIntentRequest

The request message for Intents.DeleteIntent.

Fields
name

string

Required. The name of the intent to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.intents.delete

DeletePageRequest

The request message for Pages.DeletePage.

Fields
name

string

Required. The name of the page to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/Flows/<flowID>/pages/<PageID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.pages.delete
force

bool

This field has no effect for pages with no incoming transitions. For pages with incoming transitions:

  • If force is set to false, an error will be returned with message indicating the incoming transitions.
  • If force is set to true, Dialogflow will remove the page, as well as any transitions to the page (i.e. [Target page][EventHandler.target_page] in event handlers or [Target page][TransitionRoute.target_page] in transition routes that point to this page will be cleared).

DeleteSecuritySettingsRequest

The request message for [SecuritySettings.DeleteSecuritySettings][].

Fields
name

string

Required. The name of the SecuritySettings to delete. Format: projects/<ProjectID>/locations/<LocationID>/securitySettings/<SecuritySettingsID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.securitySettings.delete

DeleteSessionEntityTypeRequest

The request message for SessionEntityTypes.DeleteSessionEntityType.

Fields
name

string

Required. The name of the session entity type to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>/entityTypes/<EntityTypeID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>/entityTypes/<EntityTypeID>. If Environment ID is not specified, we assume default 'draft' environment.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.sessionEntityTypes.delete

DeleteTransitionRouteGroupRequest

The request message for TransitionRouteGroups.DeleteTransitionRouteGroup.

Fields
name

string

Required. The name of the TransitionRouteGroup to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/transitionRouteGroups/<TransitionRouteGroupID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/transitionRouteGroups/<TransitionRouteGroupID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.transitionRouteGroups.delete
force

bool

This field has no effect for transition route group that no page is using. If the transition route group is referenced by any page:

  • If force is set to false, an error will be returned with message indicating pages that reference the transition route group.
  • If force is set to true, Dialogflow will remove the transition route group, as well as any reference to it.

DeleteVersionRequest

The request message for Versions.DeleteVersion.

Fields
name

string

Required. The name of the Version to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.versions.delete

DeleteWebhookRequest

The request message for Webhooks.DeleteWebhook.

Fields
name

string

Required. The name of the webhook to delete. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.webhooks.delete
force

bool

This field has no effect for webhook not being used. For webhooks that are used by pages/flows/transition route groups:

  • If force is set to false, an error will be returned with message indicating the referenced resources.
  • If force is set to true, Dialogflow will remove the webhook, as well as any references to the webhook (i.e. Webhook and tagin fulfillments that point to this webhook will be removed).

DeployFlowMetadata

Metadata returned for the Environments.DeployFlow long running operation.

Fields
test_errors[]

TestError

Errors of running deployment tests.

DeployFlowRequest

The request message for Environments.DeployFlow.

Fields
environment

string

Required. The environment to deploy the flow to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource environment:

  • dialogflow.environments.update
flow_version

string

Required. The flow version to deploy. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

DeployFlowResponse

The response message for Environments.DeployFlow.

Fields
environment

Environment

The updated environment where the flow is deployed.

deployment

string

The name of the flow version Deployment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/deployments/<DeploymentID>.

Deployment

Represents a deployment in an environment. A deployment happens when a flow version configured to be active in the environment. You can configure running pre-deployment steps, e.g. running validation test cases, experiment auto-rollout, etc.

Fields
name

string

The name of the deployment. Format: projects//locations//agents//environments//deployments/.

flow_version

string

The name of the flow version for this deployment. Format: projects//locations//agents//flows//versions/.

state

State

The current state of the deployment.

result

Result

Result of the deployment.

start_time

Timestamp

Start time of this deployment.

end_time

Timestamp

End time of this deployment.

Result

Result of the deployment.

Fields
deployment_test_results[]

string

Results of test cases running before the deployment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>/results/<TestCaseResultID>.

experiment

string

The name of the experiment triggered by this deployment. Format: projects//locations//agents//environments//experiments/.

State

The state of the deployment.

Enums
STATE_UNSPECIFIED State unspecified.
RUNNING The deployment is running.
SUCCEEDED The deployment succeeded.
FAILED The deployment failed.

DetectIntentRequest

The request to detect user's intent.

Fields
session

string

Required. The name of the session this query is sent to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<Session ID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>. If Environment ID is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate Session ID. It can be a random number or some type of session identifiers (preferably hashed). The length of the Session ID must not exceed 36 characters.

For more information, see the sessions guide.

Note: Always use agent versions for production traffic. See Versions and environments.

Authorization requires the following IAM permission on the specified resource session:

  • dialogflow.sessions.detectIntent
query_params

QueryParameters

The parameters of this query.

query_input

QueryInput

Required. The input specification.

output_audio_config

OutputAudioConfig

Instructs the speech synthesizer how to generate the output audio.

DetectIntentResponse

The message returned from the DetectIntent method.

Fields
response_id

string

Output only. The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.

query_result

QueryResult

The result of the conversational query.

output_audio

bytes

The audio data bytes encoded as specified in the request. Note: The output audio is generated based on the values of default platform text responses found in the query_result.response_messages field. If multiple default text responses exist, they will be concatenated when generating audio. If no default platform text responses exist, the generated audio content will be empty.

In some scenarios, multiple output audio fields may be present in the response structure. In these cases, only the top-most-level audio output has content.

output_audio_config

OutputAudioConfig

The config used by the speech synthesizer to generate the output audio.

response_type

ResponseType

Response type.

allow_cancellation

bool

Indicates whether the partial response can be cancelled when a later response arrives. e.g. if the agent specified some music as partial response, it can be cancelled.

ResponseType

Represents different DetectIntentResponse types.

Enums
RESPONSE_TYPE_UNSPECIFIED Not specified. This should never happen.
PARTIAL Partial response. e.g. Aggregated responses in a Fulfillment that enables return_partial_response can be returned as partial response. WARNING: partial response is not eligible for barge-in.
FINAL Final response.

DtmfInput

Represents the input for dtmf event.

Fields
digits

string

The dtmf digits.

finish_digit

string

The finish digit (if any).

EntityType

Entities are extracted from user input and represent parameters that are meaningful to your application. For example, a date range, a proper name such as a geographic location or landmark, and so on. Entities represent actionable data for your application.

When you define an entity, you can also include synonyms that all map to that entity. For example, "soft drink", "soda", "pop", and so on.

There are three types of entities:

  • System - entities that are defined by the Dialogflow API for common data types such as date, time, currency, and so on. A system entity is represented by the EntityType type.

  • Custom - entities that are defined by you that represent actionable data that is meaningful to your application. For example, you could define a pizza.sauce entity for red or white pizza sauce, a pizza.cheese entity for the different types of cheese on a pizza, a pizza.topping entity for different toppings, and so on. A custom entity is represented by the EntityType type.

  • User - entities that are built for an individual user such as favorites, preferences, playlists, and so on. A user entity is represented by the SessionEntityType type.

For more information about entity types, see the Dialogflow documentation.

Fields
name

string

The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID>.

display_name

string

Required. The human-readable name of the entity type, unique within the agent.

kind

Kind

Required. Indicates the kind of entity type.

auto_expansion_mode

AutoExpansionMode

Indicates whether the entity type can be automatically expanded.

entities[]

Entity

The collection of entity entries associated with the entity type.

excluded_phrases[]

ExcludedPhrase

Collection of exceptional words and phrases that shouldn't be matched. For example, if you have a size entity type with entry giant(an adjective), you might consider adding giants(a noun) as an exclusion. If the kind of entity type is KIND_MAP, then the phrases specified by entities and excluded phrases should be mutually exclusive.

enable_fuzzy_extraction

bool

Enables fuzzy entity extraction during classification.

redact

bool

Indicates whether parameters of the entity type should be redacted in log. If redaction is enabled, page parameters and intent parameters referring to the entity type will be replaced by parameter name when logging.

AutoExpansionMode

Represents different entity type expansion modes. Automated expansion allows an agent to recognize values that have not been explicitly listed in the entity (for example, new kinds of shopping list items).

Enums
AUTO_EXPANSION_MODE_UNSPECIFIED Auto expansion disabled for the entity.
AUTO_EXPANSION_MODE_DEFAULT Allows an agent to recognize values that have not been explicitly listed in the entity.

Entity

An entity entry for an associated entity type.

Fields
value

string

Required. The primary value associated with this entity entry. For example, if the entity type is vegetable, the value could be scallions.

For KIND_MAP entity types:

  • A canonical value to be used in place of synonyms.

For KIND_LIST entity types:

  • A string that can contain references to other entity types (with or without aliases).
synonyms[]

string

Required. A collection of value synonyms. For example, if the entity type is vegetable, and value is scallions, a synonym could be green onions.

For KIND_LIST entity types:

  • This collection must contain exactly one synonym equal to value.

ExcludedPhrase

An excluded entity phrase that should not be matched.

Fields
value

string

Required. The word or phrase to be excluded.

Kind

Represents kinds of entities.

Enums
KIND_UNSPECIFIED Not specified. This value should be never used.
KIND_MAP Map entity types allow mapping of a group of synonyms to a canonical value.
KIND_LIST List entity types contain a set of entries that do not map to canonical values. However, list entity types can contain references to other entity types (with or without aliases).
KIND_REGEXP Regexp entity types allow to specify regular expressions in entries values.

Environment

Represents an environment for an agent. You can create multiple versions of your agent and publish them to separate environments. When you edit an agent, you are editing the draft agent. At any point, you can save the draft agent as an agent version, which is an immutable snapshot of your agent. When you save the draft agent, it is published to the default environment. When you create agent versions, you can publish them to custom environments. You can create a variety of custom environments for testing, development, production, etc.

Fields
name

string

The name of the environment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

display_name

string

Required. The human-readable name of the environment (unique in an agent). Limit of 64 characters.

description

string

The human-readable description of the environment. The maximum length is 500 characters. If exceeded, the request is rejected.

version_configs[]

VersionConfig

A list of configurations for flow versions. You should include version configs for all flows that are reachable from [Start Flow][Agent.start_flow] in the agent. Otherwise, an error will be returned.

update_time

Timestamp

Output only. Update time of this environment.

test_cases_config

TestCasesConfig

The test cases config for continuous tests of this environment.

webhook_config

WebhookConfig

The webhook configuration for this environment.

TestCasesConfig

The configuration for continuous tests.

Fields
test_cases[]

string

A list of test case names to run. They should be under the same agent. Format of each test case name: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>

enable_continuous_run

bool

Whether to run test cases in TestCasesConfig.test_cases periodically. Default false. If set to true, run once a day.

enable_predeployment_run

bool

Whether to run test cases in TestCasesConfig.test_cases before deploying a flow version to the environment. Default false.

VersionConfig

Configuration for the version.

Fields
version

string

Required. Both flow and playbook versions are supported. Format for flow version: projects//locations//agents//flows//versions/. Format for playbook version: projects//locations//agents//playbooks//versions/.

WebhookConfig

Configuration for webhooks.

Fields
webhook_overrides[]

Webhook

The list of webhooks to override for the agent environment. The webhook must exist in the agent. You can override fields in generic_web_service and service_directory.

EventHandler

An event handler specifies an event that can be handled during a session. When the specified event happens, the following actions are taken in order:

  • If there is a trigger_fulfillment associated with the event, it will be called.
  • If there is a target_page associated with the event, the session will transition into the specified page.
  • If there is a target_flow associated with the event, the session will transition into the specified flow.
Fields
name

string

Output only. The unique identifier of this event handler.

event

string

Required. The name of the event to handle.

trigger_fulfillment

Fulfillment

The fulfillment to call when the event occurs. Handling webhook errors with a fulfillment enabled with webhook could cause infinite loop. It is invalid to specify such fulfillment for a handler handling webhooks.

Union field target. The target to transition to, either a page in the same host flow (the flow that owns this TransitionRoute), or another flow in the same agent. target can be only one of the following:
target_page

string

The target page to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

target_flow

string

The target flow to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

target_playbook

string

The target playbook to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/playbooks/<PlaybookID>.

EventInput

Represents the event to trigger.

Fields
event

string

Name of the event.

Experiment

Represents an experiment in an environment.

Fields
name

string

The name of the experiment. Format: projects//locations//agents//environments//experiments/.

display_name

string

Required. The human-readable name of the experiment (unique in an environment). Limit of 64 characters.

description

string

The human-readable description of the experiment.

state

State

The current state of the experiment. Transition triggered by Experiments.StartExperiment: DRAFT->RUNNING. Transition triggered by Experiments.CancelExperiment: DRAFT->DONE or RUNNING->DONE.

definition

Definition

The definition of the experiment.

rollout_config

RolloutConfig

The configuration for auto rollout. If set, there should be exactly two variants in the experiment (control variant being the default version of the flow), the traffic allocation for the non-control variant will gradually increase to 100% when conditions are met, and eventually replace the control variant to become the default version of the flow.

rollout_state

RolloutState

State of the auto rollout process.

rollout_failure_reason

string

The reason why rollout has failed. Should only be set when state is ROLLOUT_FAILED.

result

Result

Inference result of the experiment.

create_time

Timestamp

Creation time of this experiment.

start_time

Timestamp

Start time of this experiment.

end_time

Timestamp

End time of this experiment.

last_update_time

Timestamp

Last update time of this experiment.

experiment_length

Duration

Maximum number of days to run the experiment/rollout. If auto-rollout is not enabled, default value and maximum will be 30 days. If auto-rollout is enabled, default value and maximum will be 6 days.

variants_history[]

VariantsHistory

The history of updates to the experiment variants.

Definition

Definition of the experiment.

Fields
condition

string

The condition defines which subset of sessions are selected for this experiment. If not specified, all sessions are eligible. E.g. "query_input.language_code=en" See the conditions reference.

Union field variants. The variants of the experiment. We currently only support single variant experiment. variants can be only one of the following:
version_variants

VersionVariants

The flow versions as the variants of this experiment.

Result

The inference result which includes an objective metric to optimize and the confidence interval.

Fields
version_metrics[]

VersionMetrics

Version variants and metrics.

last_update_time

Timestamp

The last time the experiment's stats data was updated. Will have default value if stats have never been computed for this experiment.

ConfidenceInterval

A confidence interval is a range of possible values for the experiment objective you are trying to measure.

Fields
confidence_level

double

The confidence level used to construct the interval, i.e. there is X% chance that the true value is within this interval.

ratio

double

The percent change between an experiment metric's value and the value for its control.

lower_bound

double

Lower bound of the interval.

upper_bound

double

Upper bound of the interval.

CountType

Types of count-based metric for Dialogflow experiment.

Enums
COUNT_TYPE_UNSPECIFIED Count type unspecified.
TOTAL_NO_MATCH_COUNT Total number of occurrences of a 'NO_MATCH'.
TOTAL_TURN_COUNT Total number of turn counts.
AVERAGE_TURN_COUNT Average turn count in a session.

Metric

Metric and corresponding confidence intervals.

Fields
type

MetricType

Ratio-based metric type. Only one of type or count_type is specified in each Metric.

count_type

CountType

Count-based metric type. Only one of type or count_type is specified in each Metric.

confidence_interval

ConfidenceInterval

The probability that the treatment is better than all other treatments in the experiment

Union field value. The actual value of the metric. value can be only one of the following:
ratio

double

Ratio value of a metric.

count

double

Count value of a metric.

MetricType

Types of ratio-based metric for Dialogflow experiment.

Enums
METRIC_UNSPECIFIED Metric unspecified.
CONTAINED_SESSION_NO_CALLBACK_RATE Percentage of contained sessions without user calling back in 24 hours.
LIVE_AGENT_HANDOFF_RATE Percentage of sessions that were handed to a human agent.
CALLBACK_SESSION_RATE Percentage of sessions with the same user calling back.
ABANDONED_SESSION_RATE Percentage of sessions where user hung up.
SESSION_END_RATE Percentage of sessions reached Dialogflow 'END_PAGE' or 'END_SESSION'.

VersionMetrics

Version variant and associated metrics.

Fields
version

string

The name of the flow Version. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

metrics[]

Metric

The metrics and corresponding confidence intervals in the inference result.

session_count

int32

Number of sessions that were allocated to this version.

State

The state of the experiment.

Enums
STATE_UNSPECIFIED State unspecified.
DRAFT The experiment is created but not started yet.
RUNNING The experiment is running.
DONE The experiment is done.
ROLLOUT_FAILED The experiment with auto-rollout enabled has failed.

ExportAgentRequest

The request message for Agents.ExportAgent.

Fields
name

string

Required. The name of the agent to export. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.export
agent_uri

string

Optional. The Google Cloud Storage URI to export the agent to. The format of this URI must be gs://<bucket-name>/<object-name>. If left unspecified, the serialized agent is returned inline.

Dialogflow performs a write operation for the Cloud Storage object on the caller's behalf, so your request authentication must have write permissions for the object. For more information, see Dialogflow access control.

data_format

DataFormat

Optional. The data format of the exported agent. If not specified, BLOB is assumed.

environment

string

Optional. Environment name. If not set, draft environment is assumed. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

git_destination

GitDestination

Optional. The Git branch to export the agent to.

include_bigquery_export_settings

bool

Optional. Whether to include BigQuery Export setting.

DataFormat

Data format of the exported agent.

Enums
DATA_FORMAT_UNSPECIFIED Unspecified format.
BLOB Agent content will be exported as raw bytes.
JSON_PACKAGE Agent content will be exported in JSON Package format.

GitDestination

Settings for exporting to a git branch.

Fields
tracking_branch

string

Tracking branch for the git push.

commit_message

string

Commit message for the git push.

ExportAgentResponse

The response message for Agents.ExportAgent.

Fields
Union field agent. The exported agent. agent can be only one of the following:
agent_uri

string

The URI to a file containing the exported agent. This field is populated if agent_uri is specified in ExportAgentRequest.

agent_content

bytes

Uncompressed raw byte content for agent. This field is populated if none of agent_uri and git_destination are specified in ExportAgentRequest.

commit_sha

string

Commit SHA of the git push. This field is populated if git_destination is specified in ExportAgentRequest.

ExportEntityTypesMetadata

This type has no fields.

Metadata returned for the EntityTypes.ExportEntityTypes long running operation.

ExportEntityTypesRequest

The request message for EntityTypes.ExportEntityTypes.

Fields
parent

string

Required. The name of the parent agent to export entity types. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.entityTypes.get
entity_types[]

string

Required. The name of the entity types to export. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID>.

data_format

DataFormat

Optional. The data format of the exported entity types. If not specified, BLOB is assumed.

language_code

string

Optional. The language to retrieve the entity type for. The following fields are language dependent:

  • EntityType.entities.value
  • EntityType.entities.synonyms
  • EntityType.excluded_phrases.value

If not specified, all language dependent fields will be retrieved. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

Union field destination. The destination to export. destination can be only one of the following:
entity_types_uri

string

Optional. The Google Cloud Storage URI to export the entity types to. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a write operation for the Cloud Storage object on the caller's behalf, so your request authentication must have write permissions for the object. For more information, see Dialogflow access control.

entity_types_content_inline

bool

Optional. The option to return the serialized entity types inline.

DataFormat

Data format of the exported entity types.

Enums
DATA_FORMAT_UNSPECIFIED Unspecified format. Treated as BLOB.
BLOB EntityTypes will be exported as raw bytes.
JSON_PACKAGE EntityTypes will be exported in JSON Package format.

ExportEntityTypesResponse

The response message for EntityTypes.ExportEntityTypes.

Fields
Union field exported_entity_types. Exported entity types can be either in cloud storage or local download. exported_entity_types can be only one of the following:
entity_types_uri

string

The URI to a file containing the exported entity types. This field is populated only if entity_types_uri is specified in ExportEntityTypesRequest.

entity_types_content

InlineDestination

Uncompressed byte content for entity types. This field is populated only if entity_types_content_inline is set to true in ExportEntityTypesRequest.

ExportFlowRequest

The request message for Flows.ExportFlow.

Fields
name

string

Required. The name of the flow to export. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.get
flow_uri

string

Optional. The Google Cloud Storage URI to export the flow to. The format of this URI must be gs://<bucket-name>/<object-name>. If left unspecified, the serialized flow is returned inline.

Dialogflow performs a write operation for the Cloud Storage object on the caller's behalf, so your request authentication must have write permissions for the object. For more information, see Dialogflow access control.

include_referenced_flows

bool

Optional. Whether to export flows referenced by the specified flow.

ExportFlowResponse

The response message for Flows.ExportFlow.

Fields
Union field flow. The exported flow. flow can be only one of the following:
flow_uri

string

The URI to a file containing the exported flow. This field is populated only if flow_uri is specified in ExportFlowRequest.

flow_content

bytes

Uncompressed raw byte content for flow.

ExportIntentsMetadata

This type has no fields.

Metadata returned for the Intents.ExportIntents long running operation.

ExportIntentsRequest

The request message for Intents.ExportIntents.

Fields
parent

string

Required. The name of the parent agent to export intents. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.intents.get
intents[]

string

Required. The name of the intents to export. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

data_format

DataFormat

Optional. The data format of the exported intents. If not specified, BLOB is assumed.

Union field destination. The destination to export. destination can be only one of the following:
intents_uri

string

Optional. The Google Cloud Storage URI to export the intents to. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a write operation for the Cloud Storage object on the caller's behalf, so your request authentication must have write permissions for the object. For more information, see Dialogflow access control.

intents_content_inline

bool

Optional. The option to return the serialized intents inline.

DataFormat

Data format of the exported intents.

Enums
DATA_FORMAT_UNSPECIFIED Unspecified format. Treated as BLOB.
BLOB Intents will be exported as raw bytes.
JSON Intents will be exported in JSON format.
CSV Intents will be exported in CSV format.

ExportIntentsResponse

The response message for Intents.ExportIntents.

Fields
Union field intents. The exported intents. intents can be only one of the following:
intents_uri

string

The URI to a file containing the exported intents. This field is populated only if intents_uri is specified in ExportIntentsRequest.

intents_content

InlineDestination

Uncompressed byte content for intents. This field is populated only if intents_content_inline is set to true in ExportIntentsRequest.

ExportTestCasesMetadata

This type has no fields.

Metadata returned for the TestCases.ExportTestCases long running operation. This message currently has no fields.

ExportTestCasesRequest

The request message for TestCases.ExportTestCases.

Fields
parent

string

Required. The agent where to export test cases from. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.export
data_format

DataFormat

The data format of the exported test cases. If not specified, BLOB is assumed.

filter

string

The filter expression used to filter exported test cases, see API Filtering. The expression is case insensitive and supports the following syntax:

name = [OR name = ] ...

For example:

  • "name = t1 OR name = t2" matches the test case with the exact resource name "t1" or "t2".
Union field destination. The destination to export. destination can be only one of the following:
gcs_uri

string

The Google Cloud Storage URI to export the test cases to. The format of this URI must be gs://<bucket-name>/<object-name>. If unspecified, the serialized test cases is returned inline.

Dialogflow performs a write operation for the Cloud Storage object on the caller's behalf, so your request authentication must have write permissions for the object. For more information, see Dialogflow access control.

DataFormat

Data format of the exported test cases.

Enums
DATA_FORMAT_UNSPECIFIED Unspecified format.
BLOB Raw bytes.
JSON JSON format.

ExportTestCasesResponse

The response message for TestCases.ExportTestCases.

Fields
Union field destination. The exported test cases. destination can be only one of the following:
gcs_uri

string

The URI to a file containing the exported test cases. This field is populated only if gcs_uri is specified in ExportTestCasesRequest.

content

bytes

Uncompressed raw byte content for test cases.

FilterSpecs

Filter specifications for data stores.

Fields
data_stores[]

string

Optional. Data Stores where the boosting configuration is applied. The full names of the referenced data stores. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store} projects/{project}/locations/{location}/dataStores/{data_store}

filter

string

Optional. The filter expression to be applied. Expression syntax is documented at https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata#filter-expression-syntax

Flow

Flows represents the conversation flows when you build your chatbot agent.

A flow consists of many pages connected by the transition routes. Conversations always start with the built-in Start Flow (with an all-0 ID). Transition routes can direct the conversation session from the current flow (parent flow) to another flow (sub flow). When the sub flow is finished, Dialogflow will bring the session back to the parent flow, where the sub flow is started.

Usually, when a transition route is followed by a matched intent, the intent will be "consumed". This means the intent won't activate more transition routes. However, when the followed transition route moves the conversation session into a different flow, the matched intent can be carried over and to be consumed in the target flow.

Fields
name

string

The unique identifier of the flow. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

display_name

string

Required. The human-readable name of the flow.

description

string

The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.

transition_routes[]

TransitionRoute

A flow's transition routes serve two purposes:

  • They are responsible for matching the user's first utterances in the flow.
  • They are inherited by every page's [transition routes][Page.transition_routes] and can support use cases such as the user saying "help" or "can I talk to a human?", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow.

TransitionRoutes are evalauted in the following order:

  • TransitionRoutes with intent specified.
  • TransitionRoutes with only condition specified.

TransitionRoutes with intent specified are inherited by pages in the flow.

event_handlers[]

EventHandler

A flow's event handlers serve two purposes:

  • They are responsible for handling events (e.g. no match, webhook errors) in the flow.
  • They are inherited by every page's [event handlers][Page.event_handlers], which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow.

Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.

transition_route_groups[]

string

A flow's transition route group serve two purposes:

  • They are responsible for matching the user's first utterances in the flow.
  • They are inherited by every page's [transition route groups][Page.transition_route_groups]. Transition route groups defined in the page have higher priority than those defined in the flow.

Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/transitionRouteGroups/<TransitionRouteGroupID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/transitionRouteGroups/<TransitionRouteGroupID> for agent-level groups.

nlu_settings

NluSettings

NLU related settings of the flow.

advanced_settings

AdvancedSettings

Hierarchical advanced settings for this flow. The settings exposed at the lower level overrides the settings exposed at the higher level.

knowledge_connector_settings

KnowledgeConnectorSettings

Optional. Knowledge connector configuration.

multi_language_settings

MultiLanguageSettings

Optional. Multi-lingual agent settings for this flow.

locked

bool

Indicates whether the flow is locked for changes. If the flow is locked, modifications to the flow will be rejected.

MultiLanguageSettings

Settings for multi-lingual agents.

Fields
enable_multi_language_detection

bool

Optional. Enable multi-language detection for this flow. This can be set only if [agent level multi language setting][Agent.enable_multi_language_training] is enabled.

supported_response_language_codes[]

string

Optional. Agent will respond in the detected language if the detected language code is in the supported resolved languages for this flow. This will be used only if multi-language training is enabled in the agent and multi-language detection is enabled in the flow. The supported languages must be a subset of the languages supported by the agent.

FlowImportStrategy

The flow import strategy used for resource conflict resolution associated with an ImportFlowRequest.

Fields
global_import_strategy

ImportStrategy

Optional. Import strategy for resource conflict resolution, applied globally throughout the flow. It will be applied for all display name conflicts in the imported content. If not specified, 'CREATE_NEW' is assumed.

FlowValidationResult

The response message for Flows.GetFlowValidationResult.

Fields
name

string

The unique identifier of the flow validation result. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/validationResult.

validation_messages[]

ValidationMessage

Contains all validation messages.

update_time

Timestamp

Last time the flow was validated.

Form

A form is a data model that groups related parameters that can be collected from the user. The process in which the agent prompts the user and collects parameter values from the user is called form filling. A form can be added to a page. When form filling is done, the filled parameters will be written to the session.

Fields
parameters[]

Parameter

Parameters to collect from the user.

Parameter

Represents a form parameter.

Fields
display_name

string

Required. The human-readable name of the parameter, unique within the form.

required

bool

Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.

entity_type

string

Required. The entity type of the parameter. Format: projects/-/locations/-/agents/-/entityTypes/<SystemEntityTypeID> for system entity types (for example, projects/-/locations/-/agents/-/entityTypes/sys.date), or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID> for developer entity types.

is_list

bool

Indicates whether the parameter represents a list of values.

fill_behavior

FillBehavior

Required. Defines fill behavior for the parameter.

default_value

Value

The default value of an optional parameter. If the parameter is required, the default value will be ignored.

redact

bool

Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.

advanced_settings

AdvancedSettings

Hierarchical advanced settings for this parameter. The settings exposed at the lower level overrides the settings exposed at the higher level.

FillBehavior

Configuration for how the filling of a parameter should be handled.

Fields
initial_prompt_fulfillment

Fulfillment

Required. The fulfillment to provide the initial prompt that the agent can present to the user in order to fill the parameter.

reprompt_event_handlers[]

EventHandler

The handlers for parameter-level events, used to provide reprompt for the parameter or transition to a different page/flow. The supported events are: * sys.no-match-<N>, where N can be from 1 to 6 * sys.no-match-default * sys.no-input-<N>, where N can be from 1 to 6 * sys.no-input-default * sys.invalid-parameter

initial_prompt_fulfillment provides the first prompt for the parameter.

If the user's response does not fill the parameter, a no-match/no-input event will be triggered, and the fulfillment associated with the sys.no-match-1/sys.no-input-1 handler (if defined) will be called to provide a prompt. The sys.no-match-2/sys.no-input-2 handler (if defined) will respond to the next no-match/no-input event, and so on.

A sys.no-match-default or sys.no-input-default handler will be used to handle all following no-match/no-input events after all numbered no-match/no-input handlers for the parameter are consumed.

A sys.invalid-parameter handler can be defined to handle the case where the parameter values have been invalidated by webhook. For example, if the user's response fill the parameter, however the parameter was invalidated by webhook, the fulfillment associated with the sys.invalid-parameter handler (if defined) will be called to provide a prompt.

If the event handler for the corresponding event can't be found on the parameter, initial_prompt_fulfillment will be re-prompted.

FulfillIntentRequest

Request of [FulfillIntent][]

Fields
match_intent_request

MatchIntentRequest

Must be same as the corresponding MatchIntent request, otherwise the behavior is undefined.

match

Match

The matched intent/event to fulfill.

output_audio_config

OutputAudioConfig

Instructs the speech synthesizer how to generate output audio.

FulfillIntentResponse

Response of [FulfillIntent][]

Fields
response_id

string

Output only. The unique identifier of the response. It can be used to locate a response in the training example set or for reporting issues.

query_result

QueryResult

The result of the conversational query.

output_audio

bytes

The audio data bytes encoded as specified in the request. Note: The output audio is generated based on the values of default platform text responses found in the query_result.response_messages field. If multiple default text responses exist, they will be concatenated when generating audio. If no default platform text responses exist, the generated audio content will be empty.

In some scenarios, multiple output audio fields may be present in the response structure. In these cases, only the top-most-level audio output has content.

output_audio_config

OutputAudioConfig

The config used by the speech synthesizer to generate the output audio.

Fulfillment

A fulfillment can do one or more of the following actions at the same time:

  • Generate rich message responses.
  • Set parameter values.
  • Call the webhook.

Fulfillments can be called at various stages in the Page or Form lifecycle. For example, when a DetectIntentRequest drives a session to enter a new page, the page's entry fulfillment can add a static response to the QueryResult in the returning DetectIntentResponse, call the webhook (for example, to load user data from a database), or both.

Fields
messages[]

ResponseMessage

The list of rich message responses to present to the user.

webhook

string

The webhook to call. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>.

return_partial_responses

bool

Whether Dialogflow should return currently queued fulfillment response messages in streaming APIs. If a webhook is specified, it happens before Dialogflow invokes webhook. Warning: 1) This flag only affects streaming API. Responses are still queued and returned once in non-streaming API. 2) The flag can be enabled in any fulfillment but only the first 3 partial responses will be returned. You may only want to apply it to fulfillments that have slow webhooks.

tag

string

The value of this field will be populated in the WebhookRequest fulfillmentInfo.tag field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes. This field is required if webhook is specified.

set_parameter_actions[]

SetParameterAction

Set parameter values before executing the webhook.

conditional_cases[]

ConditionalCases

Conditional cases for this fulfillment.

advanced_settings

AdvancedSettings

Hierarchical advanced settings for this fulfillment. The settings exposed at the lower level overrides the settings exposed at the higher level.

enable_generative_fallback

bool

If the flag is true, the agent will utilize LLM to generate a text response. If LLM generation fails, the defined responses in the fulfillment will be respected. This flag is only useful for fulfillments associated with no-match event handlers.

ConditionalCases

A list of cascading if-else conditions. Cases are mutually exclusive. The first one with a matching condition is selected, all the rest ignored.

Fields
cases[]

Case

A list of cascading if-else conditions.

Case

Each case has a Boolean condition. When it is evaluated to be True, the corresponding messages will be selected and evaluated recursively.

Fields
condition

string

The condition to activate and select this case. Empty means the condition is always true. The condition is evaluated against [form parameters][Form.parameters] or [session parameters][SessionInfo.parameters].

See the conditions reference.

case_content[]

CaseContent

A list of case content.

CaseContent

The list of messages or conditional cases to activate for this case.

Fields
Union field cases_or_message. Either a message is returned or additional cases to be evaluated. cases_or_message can be only one of the following:
message

ResponseMessage

Returned message.

additional_cases

ConditionalCases

Additional cases to be evaluated.

SetParameterAction

Setting a parameter value.

Fields
parameter

string

Display name of the parameter.

value

Value

The new value of the parameter. A null value clears the parameter.

GcsDestination

Google Cloud Storage location for a Dialogflow operation that writes or exports objects (e.g. exported agent or transcripts) outside of Dialogflow.

Fields
uri

string

Required. The Google Cloud Storage URI for the exported objects. A URI is of the form: gs://bucket/object-name-or-prefix Whether a full object name, or just a prefix, its usage depends on the Dialogflow operation.

GenerativeSettings

Settings for Generative AI.

Fields
name

string

Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/generativeSettings.

fallback_settings

FallbackSettings

Settings for Generative Fallback.

generative_safety_settings

SafetySettings

Settings for Generative Safety.

knowledge_connector_settings

KnowledgeConnectorSettings

Settings for knowledge connector.

language_code

string

Language for this settings.

FallbackSettings

Settings for Generative Fallback.

Fields
selected_prompt

string

Display name of the selected prompt.

prompt_templates[]

PromptTemplate

Stored prompts that can be selected, for example default templates like "conservative" or "chatty", or user defined ones.

PromptTemplate

Prompt template.

Fields
display_name

string

Prompt name.

prompt_text

string

Prompt text that is sent to a LLM on no-match default, placeholders are filled downstream. For example: "Here is a conversation $conversation, a response is: "

frozen

bool

If the flag is true, the prompt is frozen and cannot be modified by users.

KnowledgeConnectorSettings

Settings for knowledge connector. These parameters are used for LLM prompt like "You are . You are a helpful and verbose at , . Your task is to help humans on ".

Fields
business

string

Name of the company, organization or other entity that the agent represents. Used for knowledge connector LLM prompt and for knowledge search.

agent

string

Name of the virtual agent. Used for LLM prompt. Can be left empty.

agent_identity

string

Identity of the agent, e.g. "virtual agent", "AI assistant".

business_description

string

Company description, used for LLM prompt, e.g. "a family company selling freshly roasted coffee beans".

agent_scope

string

Agent scope, e.g. "Example company website", "internal Example company website for employees", "manual of car owner".

disable_data_store_fallback

bool

Whether to disable fallback to Data Store search results (in case the LLM couldn't pick a proper answer). Per default the feature is enabled.

Generator

Generators contain prompt to be sent to the LLM model to generate text. The prompt can contain parameters which will be resolved before calling the model. It can optionally contain banned phrases to ensure the model responses are safe.

Fields
name

string

The unique identifier of the generator. Must be set for the Generators.UpdateGenerator method. [Generators.CreateGenerate][] populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/generators/<GeneratorID>.

display_name

string

Required. The human-readable name of the generator, unique within the agent. The prompt contains pre-defined parameters such as $conversation, $last-user-utterance, etc. populated by Dialogflow. It can also contain custom placeholders which will be resolved during fulfillment.

prompt_text

Phrase

Required. Prompt for the LLM model.

placeholders[]

Placeholder

Optional. List of custom placeholders in the prompt text.

model_parameter

ModelParameter

Parameters passed to the LLM to configure its behavior.

ModelParameter

Parameters to be passed to the LLM. If not set, default values will be used.

Fields
temperature

float

The temperature used for sampling. Temperature sampling occurs after both topP and topK have been applied. Valid range: [0.0, 1.0] Low temperature = less random. High temperature = more random.

max_decode_steps

int32

The maximum number of tokens to generate.

top_p

float

If set, only the tokens comprising the top top_p probability mass are considered. If both top_p and top_k are set, top_p will be used for further refining candidates selected with top_k. Valid range: (0.0, 1.0]. Small topP = less random. Large topP = more random.

top_k

int32

If set, the sampling process in each step is limited to the top_k tokens with highest probabilities. Valid range: [1, 40] or 1000+. Small topK = less random. Large topK = more random.

Placeholder

Represents a custom placeholder in the prompt text.

Fields
id

string

Unique ID used to map custom placeholder to parameters in fulfillment.

name

string

Custom placeholder value in the prompt text.

GetAgentRequest

The request message for Agents.GetAgent.

Fields
name

string

Required. The name of the agent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.get

GetAgentValidationResultRequest

The request message for Agents.GetAgentValidationResult.

Fields
name

string

Required. The agent name. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/validationResult.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.get
language_code

string

If not specified, the agent's default language is used.

GetChangelogRequest

The request message for Changelogs.GetChangelog.

Fields
name

string

Required. The name of the changelog to get. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/changelogs/<ChangelogID>.

GetDeploymentRequest

The request message for Deployments.GetDeployment.

Fields
name

string

Required. The name of the Deployment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/deployments/<DeploymentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.deployments.get

GetEntityTypeRequest

The request message for EntityTypes.GetEntityType.

Fields
name

string

Required. The name of the entity type. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.entityTypes.get
language_code

string

The language to retrieve the entity type for. The following fields are language dependent:

  • EntityType.entities.value
  • EntityType.entities.synonyms
  • EntityType.excluded_phrases.value

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

GetEnvironmentRequest

The request message for Environments.GetEnvironment.

Fields
name

string

Required. The name of the Environment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.environments.get

GetExperimentRequest

The request message for Experiments.GetExperiment.

Fields
name

string

Required. The name of the Environment. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/experiments/<ExperimentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.experiments.get

GetFlowRequest

The response message for Flows.GetFlow.

Fields
name

string

Required. The name of the flow to get. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.get
language_code

string

The language to retrieve the flow for. The following fields are language dependent:

  • Flow.event_handlers.trigger_fulfillment.messages
  • Flow.event_handlers.trigger_fulfillment.conditional_cases
  • Flow.transition_routes.trigger_fulfillment.messages
  • Flow.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

GetFlowValidationResultRequest

The request message for Flows.GetFlowValidationResult.

Fields
name

string

Required. The flow name. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/validationResult.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.get
language_code

string

If not specified, the agent's default language is used.

GetGenerativeSettingsRequest

Request for GetGenerativeSettings RPC.

Fields
name

string

Required. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/generativeSettings.

language_code

string

Required. Language code of the generative settings.

GetGeneratorRequest

The request message for Generators.GetGenerator.

Fields
name

string

Required. The name of the generator. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/generators/<GeneratorID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.generators.get
language_code

string

The language to list generators for.

GetIntentRequest

The request message for Intents.GetIntent.

Fields
name

string

Required. The name of the intent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.intents.get
language_code

string

The language to retrieve the intent for. The following fields are language dependent:

  • Intent.training_phrases.parts.text

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

GetPageRequest

The request message for Pages.GetPage.

Fields
name

string

Required. The name of the page. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.pages.get
language_code

string

The language to retrieve the page for. The following fields are language dependent:

  • Page.entry_fulfillment.messages
  • Page.entry_fulfillment.conditional_cases
  • Page.event_handlers.trigger_fulfillment.messages
  • Page.event_handlers.trigger_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages * Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.reprompt_event_handlers.messages * Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases
  • Page.transition_routes.trigger_fulfillment.messages
  • Page.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

GetSecuritySettingsRequest

The request message for SecuritySettingsService.GetSecuritySettings.

Fields
name

string

Required. Resource name of the settings. Format: projects/<ProjectID>/locations/<LocationID>/securitySettings/<securitysettingsID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.securitySettings.get

GetSessionEntityTypeRequest

The request message for SessionEntityTypes.GetSessionEntityType.

Fields
name

string

Required. The name of the session entity type. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>/entityTypes/<EntityTypeID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>/entityTypes/<EntityTypeID>. If Environment ID is not specified, we assume default 'draft' environment.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.sessionEntityTypes.get

GetTestCaseRequest

The request message for TestCases.GetTestCase.

Fields
name

string

Required. The name of the testcase. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.testcases.get

GetTestCaseResultRequest

The request message for TestCases.GetTestCaseResult.

Fields
name

string

Required. The name of the testcase. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>/results/<TestCaseResultID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.testcases.get

GetTransitionRouteGroupRequest

The request message for TransitionRouteGroups.GetTransitionRouteGroup.

Fields
name

string

Required. The name of the TransitionRouteGroup. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/transitionRouteGroups/<TransitionRouteGroupID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/transitionRouteGroups/<TransitionRouteGroupID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.transitionRouteGroups.get
language_code

string

The language to retrieve the transition route group for. The following fields are language dependent:

  • TransitionRouteGroup.transition_routes.trigger_fulfillment.messages * TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

GetVersionRequest

The request message for Versions.GetVersion.

Fields
name

string

Required. The name of the Version. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.versions.get

GetWebhookRequest

The request message for Webhooks.GetWebhook.

Fields
name

string

Required. The name of the webhook. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.webhooks.get

ImportEntityTypesMetadata

This type has no fields.

Metadata returned for the EntityTypes.ImportEntityTypes long running operation.

ImportEntityTypesRequest

The request message for EntityTypes.ImportEntityTypes.

Fields
parent

string

Required. The agent to import the entity types into. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.entityTypes.create
merge_option

MergeOption

Required. Merge option for importing entity types.

target_entity_type

string

Optional. The target entity type to import into. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entity_types/<EntityTypeID>. If set, there should be only one entity type included in [entity_types][google.cloud.dialogflow.cx.v3.ImportEntityTypesRequest.entity_types], of which the type should match the type of the target entity type. All entities in the imported entity type will be added to the target entity type.

Union field entity_types. Required. The entity types to import. entity_types can be only one of the following:
entity_types_uri

string

The Google Cloud Storage URI to import entity types from. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a read operation for the Cloud Storage object on the caller's behalf, so your request authentication must have read permissions for the object. For more information, see Dialogflow access control.

entity_types_content

InlineSource

Uncompressed byte content of entity types.

MergeOption

Merge option when display name conflicts exist during import.

Enums
MERGE_OPTION_UNSPECIFIED Unspecified. If used, system uses REPORT_CONFLICT as default.
REPLACE Replace the original entity type in the agent with the new entity type when display name conflicts exist.
MERGE Merge the original entity type with the new entity type when display name conflicts exist.
RENAME Create new entity types with new display names to differentiate them from the existing entity types when display name conflicts exist.
REPORT_CONFLICT Report conflict information if display names conflict is detected. Otherwise, import entity types.
KEEP Keep the original entity type and discard the conflicting new entity type when display name conflicts exist.

ImportEntityTypesResponse

The response message for EntityTypes.ImportEntityTypes.

Fields
entity_types[]

string

The unique identifier of the imported entity types. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entity_types/<EntityTypeID>.

conflicting_resources

ConflictingResources

Info which resources have conflicts when [REPORT_CONFLICT][ImportEntityTypesResponse.REPORT_CONFLICT] merge_option is set in ImportEntityTypesRequest.

ConflictingResources

Conflicting resources detected during the import process. Only filled when [REPORT_CONFLICT][ImportEntityTypesResponse.REPORT_CONFLICT] is set in the request and there are conflicts in the display names.

Fields
entity_type_display_names[]

string

Display names of conflicting entity types.

entity_display_names[]

string

Display names of conflicting entities.

ImportFlowRequest

The request message for Flows.ImportFlow.

Fields
parent

string

Required. The agent to import the flow into. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.flows.create
import_option

ImportOption

Flow import mode. If not specified, KEEP is assumed.

flow_import_strategy

FlowImportStrategy

Optional. Specifies the import strategy used when resolving resource conflicts.

Union field flow. Required. The flow to import. flow can be only one of the following:
flow_uri

string

The Google Cloud Storage URI to import flow from. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a read operation for the Cloud Storage object on the caller's behalf, so your request authentication must have read permissions for the object. For more information, see Dialogflow access control.

flow_content

bytes

Uncompressed raw byte content for flow.

ImportOption

Import option.

Enums
IMPORT_OPTION_UNSPECIFIED Unspecified. Treated as KEEP.
KEEP Always respect settings in exported flow content. It may cause a import failure if some settings (e.g. custom NLU) are not supported in the agent to import into.
FALLBACK Fallback to default settings if some settings are not supported in the agent to import into. E.g. Standard NLU will be used if custom NLU is not available.

ImportFlowResponse

The response message for Flows.ImportFlow.

Fields
flow

string

The unique identifier of the new flow. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

ImportIntentsMetadata

This type has no fields.

Metadata returned for the Intents.ImportIntents long running operation.

ImportIntentsRequest

The request message for Intents.ImportIntents.

Fields
parent

string

Required. The agent to import the intents into. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.intents.create
merge_option

MergeOption

Merge option for importing intents. If not specified, REJECT is assumed.

Union field intents. Required. The intents to import. intents can be only one of the following:
intents_uri

string

The Google Cloud Storage URI to import intents from. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a read operation for the Cloud Storage object on the caller's behalf, so your request authentication must have read permissions for the object. For more information, see Dialogflow access control.

intents_content

InlineSource

Uncompressed byte content of intents.

MergeOption

Merge option when display name conflicts exist during import.

Enums
MERGE_OPTION_UNSPECIFIED Unspecified. Should not be used.
REJECT

DEPRECATED: Please use [REPORT_CONFLICT][ImportIntentsRequest.REPORT_CONFLICT] instead. Fail the request if there are intents whose display names conflict with the display names of intents in the agent.

REPLACE Replace the original intent in the agent with the new intent when display name conflicts exist.
MERGE Merge the original intent with the new intent when display name conflicts exist.
RENAME Create new intents with new display names to differentiate them from the existing intents when display name conflicts exist.
REPORT_CONFLICT Report conflict information if display names conflict is detected. Otherwise, import intents.
KEEP Keep the original intent and discard the conflicting new intent when display name conflicts exist.

ImportIntentsResponse

The response message for Intents.ImportIntents.

Fields
intents[]

string

The unique identifier of the imported intents. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

conflicting_resources

ConflictingResources

Info which resources have conflicts when [REPORT_CONFLICT][ImportIntentsResponse.REPORT_CONFLICT] merge_option is set in ImportIntentsRequest.

ConflictingResources

Conflicting resources detected during the import process. Only filled when [REPORT_CONFLICT][ImportIntentsResponse.REPORT_CONFLICT] is set in the request and there are conflicts in the display names.

Fields
intent_display_names[]

string

Display names of conflicting intents.

entity_display_names[]

string

Display names of conflicting entities.

ImportStrategy

Import strategies for the conflict resolution of resources (i.e. intents, entities, and webhooks) with identical display names during import operations.

Enums
IMPORT_STRATEGY_UNSPECIFIED Unspecified. Treated as 'CREATE_NEW'.
IMPORT_STRATEGY_CREATE_NEW Create a new resource with a numeric suffix appended to the end of the existing display name.
IMPORT_STRATEGY_REPLACE Replace existing resource with incoming resource in the content to be imported.
IMPORT_STRATEGY_KEEP Keep existing resource and discard incoming resource in the content to be imported.
IMPORT_STRATEGY_MERGE Combine existing and incoming resources when a conflict is encountered.
IMPORT_STRATEGY_THROW_ERROR Throw error if a conflict is encountered.

ImportTestCasesMetadata

Metadata returned for the TestCases.ImportTestCases long running operation.

Fields
errors[]

TestCaseError

Errors for failed test cases.

ImportTestCasesRequest

The request message for TestCases.ImportTestCases.

Fields
parent

string

Required. The agent to import test cases to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.import
Union field source. Required. The source to import. source can be only one of the following:
gcs_uri

string

The Google Cloud Storage URI to import test cases from. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a read operation for the Cloud Storage object on the caller's behalf, so your request authentication must have read permissions for the object. For more information, see Dialogflow access control.

content

bytes

Uncompressed raw byte content for test cases.

ImportTestCasesResponse

The response message for TestCases.ImportTestCases.

Fields
names[]

string

The unique identifiers of the new test cases. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

InlineDestination

Inline destination for a Dialogflow operation that writes or exports objects (e.g. intents) outside of Dialogflow.

Fields
content

bytes

Output only. The uncompressed byte content for the objects. Only populated in responses.

InlineSource

Inline source for a Dialogflow operation that reads or imports objects (e.g. intents) into Dialogflow.

Fields
content

bytes

The uncompressed byte content for the objects.

InputAudioConfig

Instructs the speech recognizer on how to process the audio content.

Fields
audio_encoding

AudioEncoding

Required. Audio encoding of the audio content to process.

sample_rate_hertz

int32

Sample rate (in Hertz) of the audio content sent in the query. Refer to Cloud Speech API documentation for more details.

enable_word_info

bool

Optional. If true, Dialogflow returns SpeechWordInfo in StreamingRecognitionResult with information about the recognized speech words, e.g. start and end time offsets. If false or unspecified, Speech doesn't return any word-level information.

phrase_hints[]

string

Optional. A list of strings containing words and phrases that the speech recognizer should recognize with higher likelihood.

See the Cloud Speech documentation for more details.

model

string

Optional. Which Speech model to select for the given request. For more information, see Speech models.

model_variant

SpeechModelVariant

Optional. Which variant of the Speech model to use.

single_utterance

bool

Optional. If false (default), recognition does not cease until the client closes the stream. If true, the recognizer will detect a single spoken utterance in input audio. Recognition ceases when it detects the audio's voice has stopped or paused. In this case, once a detected intent is received, the client should close the stream and start a new request with a new stream as needed. Note: This setting is relevant only for streaming methods.

barge_in_config

BargeInConfig

Configuration of barge-in behavior during the streaming of input audio.

opt_out_conformer_model_migration

bool

If true, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to Dialogflow CX Speech model migration.

Intent

An intent represents a user's intent to interact with a conversational agent.

You can provide information for the Dialogflow API to use to match user input to an intent by adding training phrases (i.e., examples of user input) to your intent.

Fields
name

string

The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

display_name

string

Required. The human-readable name of the intent, unique within the agent.

training_phrases[]

TrainingPhrase

The collection of training phrases the agent is trained on to identify the intent.

parameters[]

Parameter

The collection of parameters associated with the intent.

priority

int32

The priority of this intent. Higher numbers represent higher priorities.

  • If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the Normal priority in the console.
  • If the supplied value is negative, the intent is ignored in runtime detect intent requests.
is_fallback

bool

Indicates whether this is a fallback intent. Currently only default fallback intent is allowed in the agent, which is added upon agent creation. Adding training phrases to fallback intent is useful in the case of requests that are mistakenly matched, since training phrases assigned to fallback intents act as negative examples that triggers no-match event.

labels

map<string, string>

The key/value metadata to label an intent. Labels can contain lowercase letters, digits and the symbols '-' and '_'. International characters are allowed, including letters from unicase alphabets. Keys must start with a letter. Keys and values can be no longer than 63 characters and no more than 128 bytes.

Prefix "sys-" is reserved for Dialogflow defined labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-contextual The above labels do not require value. "sys-head" means the intent is a head intent. "sys.contextual" means the intent is a contextual intent.

description

string

Human readable description for better understanding an intent like its scope, content, result etc. Maximum character limit: 140 characters.

Parameter

Represents an intent parameter.

Fields
id

string

Required. The unique identifier of the parameter. This field is used by training phrases to annotate their parts.

entity_type

string

Required. The entity type of the parameter. Format: projects/-/locations/-/agents/-/entityTypes/<SystemEntityTypeID> for system entity types (for example, projects/-/locations/-/agents/-/entityTypes/sys.date), or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/entityTypes/<EntityTypeID> for developer entity types.

is_list

bool

Indicates whether the parameter represents a list of values.

redact

bool

Indicates whether the parameter content should be redacted in log. If redaction is enabled, the parameter content will be replaced by parameter name during logging. Note: the parameter content is subject to redaction if either parameter level redaction or entity type level redaction is enabled.

TrainingPhrase

Represents an example that the agent is trained on to identify the intent.

Fields
id

string

Output only. The unique identifier of the training phrase.

parts[]

Part

Required. The ordered list of training phrase parts. The parts are concatenated in order to form the training phrase.

Note: The API does not automatically annotate training phrases like the Dialogflow Console does.

Note: Do not forget to include whitespace at part boundaries, so the training phrase is well formatted when the parts are concatenated.

If the training phrase does not need to be annotated with parameters, you just need a single part with only the Part.text field set.

If you want to annotate the training phrase, you must create multiple parts, where the fields of each part are populated in one of two ways:

  • Part.text is set to a part of the phrase that has no parameters.
  • Part.text is set to a part of the phrase that you want to annotate, and the parameter_id field is set.
repeat_count

int32

Indicates how many times this example was added to the intent.

Part

Represents a part of a training phrase.

Fields
text

string

Required. The text for this part.

parameter_id

string

The parameter used to annotate this part of the training phrase. This field is required for annotated parts of the training phrase.

IntentCoverage

Intent coverage represents the percentage of all possible intents in the agent that are triggered in any of a parent's test cases.

Fields
intents[]

Intent

The list of Intents present in the agent

coverage_score

float

The percent of intents in the agent that are covered.

Intent

The agent's intent.

Fields
intent

string

The intent full resource name

covered

bool

Whether the intent is covered by at least one of the agent's test cases.

IntentInput

Represents the intent to trigger programmatically rather than as a result of natural language processing.

Fields
intent

string

Required. The unique identifier of the intent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

IntentView

Represents the options for views of an intent. An intent can be a sizable object. Therefore, we provide a resource view that does not return training phrases in the response.

Enums
INTENT_VIEW_UNSPECIFIED Not specified. Treated as INTENT_VIEW_FULL.
INTENT_VIEW_PARTIAL Training phrases field is not populated in the response.
INTENT_VIEW_FULL All fields are populated.

KnowledgeConnectorSettings

The Knowledge Connector settings for this page or flow. This includes information such as the attached Knowledge Bases, and the way to execute fulfillment.

Fields
enabled

bool

Whether Knowledge Connector is enabled or not.

trigger_fulfillment

Fulfillment

The fulfillment to be triggered.

When the answers from the Knowledge Connector are selected by Dialogflow, you can utitlize the request scoped parameter $request.knowledge.answers (contains up to the 5 highest confidence answers) and $request.knowledge.questions (contains the corresponding questions) to construct the fulfillment.

data_store_connections[]

DataStoreConnection

Optional. List of related data store connections.

Union field target. The target to transition to, either a page in the same host flow (the flow that owns this KnowledgeConnectorSettings), or another flow in the same agent. target can be only one of the following:
target_page

string

The target page to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

target_flow

string

The target flow to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

LanguageInfo

Represents the language information of the request.

Fields
input_language_code

string

The language code specified in the original request.

resolved_language_code

string

The language code detected for this request based on the user conversation.

confidence_score

float

The confidence score of the detected language between 0 and 1.

ListAgentsRequest

The request message for Agents.ListAgents.

Fields
parent

string

Required. The location to list all agents for. Format: projects/<ProjectID>/locations/<LocationID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.agents.list
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListAgentsResponse

The response message for Agents.ListAgents.

Fields
agents[]

Agent

The list of agents. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListChangelogsRequest

The request message for Changelogs.ListChangelogs.

Fields
parent

string

Required. The agent containing the changelogs. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

filter

string

The filter string. Supports filter by user_email, resource, type and create_time. Some examples: 1. By user email: user_email = "someone@google.com" 2. By resource name: resource = "projects/123/locations/global/agents/456/flows/789" 3. By resource display name: display_name = "my agent" 4. By action: action = "Create" 5. By type: type = "flows" 6. By create time. Currently predicates on create_time and create_time_epoch_seconds are supported: create_time_epoch_seconds > 1551790877 AND create_time <= 2017-01-15T01:30:15.01Z 7. Combination of above filters: resource = "projects/123/locations/global/agents/456/flows/789" AND user_email = "someone@google.com" AND create_time <= 2017-01-15T01:30:15.01Z

page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListChangelogsResponse

The response message for Changelogs.ListChangelogs.

Fields
changelogs[]

Changelog

The list of changelogs. There will be a maximum number of items returned based on the page_size field in the request. The changelogs will be ordered by timestamp.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListContinuousTestResultsRequest

The request message for Environments.ListContinuousTestResults.

Fields
parent

string

Required. The environment to list results for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.environments.get
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListContinuousTestResultsResponse

The response message for [Environments.ListTestCaseResults][].

Fields
continuous_test_results[]

ContinuousTestResult

The list of continuous test results.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListDeploymentsRequest

The request message for Deployments.ListDeployments.

Fields
parent

string

Required. The Environment to list all environments for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.deployments.list
page_size

int32

The maximum number of items to return in a single page. By default 20 and at most 100.

page_token

string

The next_page_token value returned from a previous list request.

ListDeploymentsResponse

The response message for Deployments.ListDeployments.

Fields
deployments[]

Deployment

The list of deployments. There will be a maximum number of items returned based on the page_size field in the request. The list may in some cases be empty or contain fewer entries than page_size even if this isn't the last page.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListEntityTypesRequest

The request message for EntityTypes.ListEntityTypes.

Fields
parent

string

Required. The agent to list all entity types for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.entityTypes.list
language_code

string

The language to list entity types for. The following fields are language dependent:

  • EntityType.entities.value
  • EntityType.entities.synonyms
  • EntityType.excluded_phrases.value

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListEntityTypesResponse

The response message for EntityTypes.ListEntityTypes.

Fields
entity_types[]

EntityType

The list of entity types. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListEnvironmentsRequest

The request message for Environments.ListEnvironments.

Fields
parent

string

Required. The Agent to list all environments for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.environments.list
page_size

int32

The maximum number of items to return in a single page. By default 20 and at most 100.

page_token

string

The next_page_token value returned from a previous list request.

ListEnvironmentsResponse

The response message for Environments.ListEnvironments.

Fields
environments[]

Environment

The list of environments. There will be a maximum number of items returned based on the page_size field in the request. The list may in some cases be empty or contain fewer entries than page_size even if this isn't the last page.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListExperimentsRequest

The request message for Experiments.ListExperiments.

Fields
parent

string

Required. The Environment to list all environments for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.experiments.list
page_size

int32

The maximum number of items to return in a single page. By default 20 and at most 100.

page_token

string

The next_page_token value returned from a previous list request.

ListExperimentsResponse

The response message for Experiments.ListExperiments.

Fields
experiments[]

Experiment

The list of experiments. There will be a maximum number of items returned based on the page_size field in the request. The list may in some cases be empty or contain fewer entries than page_size even if this isn't the last page.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListFlowsRequest

The request message for Flows.ListFlows.

Fields
parent

string

Required. The agent containing the flows. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.flows.list
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

language_code

string

The language to list flows for. The following fields are language dependent:

  • Flow.event_handlers.trigger_fulfillment.messages
  • Flow.event_handlers.trigger_fulfillment.conditional_cases
  • Flow.transition_routes.trigger_fulfillment.messages
  • Flow.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

ListFlowsResponse

The response message for Flows.ListFlows.

Fields
flows[]

Flow

The list of flows. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListGeneratorsRequest

The request message for Generators.ListGenerators.

Fields
parent

string

Required. The agent to list all generators for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.generators.list
language_code

string

The language to list generators for.

page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListGeneratorsResponse

The response message for Generators.ListGenerators.

Fields
generators[]

Generator

The list of generators. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListIntentsRequest

The request message for Intents.ListIntents.

Fields
parent

string

Required. The agent to list all intents for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.intents.list
language_code

string

The language to list intents for. The following fields are language dependent:

  • Intent.training_phrases.parts.text

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

intent_view

IntentView

The resource view to apply to the returned intent.

page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListIntentsResponse

The response message for Intents.ListIntents.

Fields
intents[]

Intent

The list of intents. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListPagesRequest

The request message for Pages.ListPages.

Fields
parent

string

Required. The flow to list all pages for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.pages.list
language_code

string

The language to list pages for. The following fields are language dependent:

  • Page.entry_fulfillment.messages
  • Page.entry_fulfillment.conditional_cases
  • Page.event_handlers.trigger_fulfillment.messages
  • Page.event_handlers.trigger_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages * Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.reprompt_event_handlers.messages * Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases
  • Page.transition_routes.trigger_fulfillment.messages
  • Page.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListPagesResponse

The response message for Pages.ListPages.

Fields
pages[]

Page

The list of pages. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListSecuritySettingsRequest

The request message for [SecuritySettings.ListSecuritySettings][].

Fields
parent

string

Required. The location to list all security settings for. Format: projects/<ProjectID>/locations/<LocationID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.securitySettings.list
page_size

int32

The maximum number of items to return in a single page. By default 20 and at most 100.

page_token

string

The next_page_token value returned from a previous list request.

ListSecuritySettingsResponse

The response message for [SecuritySettings.ListSecuritySettings][].

Fields
security_settings[]

SecuritySettings

The list of security settings.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListSessionEntityTypesRequest

The request message for SessionEntityTypes.ListSessionEntityTypes.

Fields
parent

string

Required. The session to list all session entity types from. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>. If Environment ID is not specified, we assume default 'draft' environment.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.sessionEntityTypes.list
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListSessionEntityTypesResponse

The response message for SessionEntityTypes.ListSessionEntityTypes.

Fields
session_entity_types[]

SessionEntityType

The list of session entity types. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListTestCaseResultsRequest

The request message for TestCases.ListTestCaseResults.

Fields
parent

string

Required. The test case to list results for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>. Specify a - as a wildcard for TestCase ID to list results across multiple test cases.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.get
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

filter

string

The filter expression used to filter test case results. See API Filtering.

The expression is case insensitive. Only 'AND' is supported for logical operators. The supported syntax is listed below in detail:

[AND ] ... [AND latest]

The supported fields and operators are: field operator environment =, IN (Use value draft for draft environment) test_time >, <

latest only returns the latest test result in all results for each test case.

Examples: * "environment=draft AND latest" matches the latest test result for each test case in the draft environment. * "environment IN (e1,e2)" matches any test case results with an environment resource name of either "e1" or "e2". * "test_time > 1602540713" matches any test case results with test time later than a unix timestamp in seconds 1602540713.

ListTestCaseResultsResponse

The response message for TestCases.ListTestCaseResults.

Fields
test_case_results[]

TestCaseResult

The list of test case results.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListTestCasesRequest

The request message for TestCases.ListTestCases.

Fields
parent

string

Required. The agent to list all pages for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.testcases.list
page_size

int32

The maximum number of items to return in a single page. By default 20. Note that when TestCaseView = FULL, the maximum page size allowed is 20. When TestCaseView = BASIC, the maximum page size allowed is 500.

page_token

string

The next_page_token value returned from a previous list request.

view

TestCaseView

Specifies whether response should include all fields or just the metadata.

TestCaseView

Specifies how much test case information to include in the response.

Enums
TEST_CASE_VIEW_UNSPECIFIED The default / unset value. The API will default to the BASIC view.
BASIC Include basic metadata about the test case, but not the conversation turns. This is the default value.
FULL Include everything.

ListTestCasesResponse

The response message for TestCases.ListTestCases.

Fields
test_cases[]

TestCase

The list of test cases. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListTransitionRouteGroupsRequest

The request message for TransitionRouteGroups.ListTransitionRouteGroups.

Fields
parent

string

Required. The flow to list all transition route groups for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID> or `projects//locations//agents/.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.transitionRouteGroups.list
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

language_code

string

The language to list transition route groups for. The following fields are language dependent:

  • TransitionRouteGroup.transition_routes.trigger_fulfillment.messages * TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

ListTransitionRouteGroupsResponse

The response message for TransitionRouteGroups.ListTransitionRouteGroups.

Fields
transition_route_groups[]

TransitionRouteGroup

The list of transition route groups. There will be a maximum number of items returned based on the page_size field in the request. The list may in some cases be empty or contain fewer entries than page_size even if this isn't the last page.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListVersionsRequest

The request message for Versions.ListVersions.

Fields
parent

string

Required. The Flow to list all versions for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.versions.list
page_size

int32

The maximum number of items to return in a single page. By default 20 and at most 100.

page_token

string

The next_page_token value returned from a previous list request.

ListVersionsResponse

The response message for Versions.ListVersions.

Fields
versions[]

Version

A list of versions. There will be a maximum number of items returned based on the page_size field in the request. The list may in some cases be empty or contain fewer entries than page_size even if this isn't the last page.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListWebhooksRequest

The request message for Webhooks.ListWebhooks.

Fields
parent

string

Required. The agent to list all webhooks for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource parent:

  • dialogflow.webhooks.list
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

ListWebhooksResponse

The response message for Webhooks.ListWebhooks.

Fields
webhooks[]

Webhook

The list of webhooks. There will be a maximum number of items returned based on the page_size field in the request.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

LoadVersionRequest

The request message for Versions.LoadVersion.

Fields
name

string

Required. The Version to be loaded to draft flow. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.versions.load
allow_override_agent_resources

bool

This field is used to prevent accidental overwrite of other agent resources, which can potentially impact other flow's behavior. If allow_override_agent_resources is false, conflicted agent-level resources will not be overridden (i.e. intents, entities, webhooks).

LookupEnvironmentHistoryRequest

The request message for Environments.LookupEnvironmentHistory.

Fields
name

string

Required. Resource name of the environment to look up the history for. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.environments.lookupHistory
page_size

int32

The maximum number of items to return in a single page. By default 100 and at most 1000.

page_token

string

The next_page_token value returned from a previous list request.

LookupEnvironmentHistoryResponse

The response message for Environments.LookupEnvironmentHistory.

Fields
environments[]

Environment

Represents a list of snapshots for an environment. Time of the snapshots is stored in update_time.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

Match

Represents one match result of [MatchIntent][].

Fields
intent

Intent

The Intent that matched the query. Some, not all fields are filled in this message, including but not limited to: name and display_name. Only filled for INTENT match type.

event

string

The event that matched the query. Filled for EVENT, NO_MATCH and NO_INPUT match types.

parameters

Struct

The collection of parameters extracted from the query.

Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs:

  • MapKey type: string
  • MapKey value: parameter name
  • MapValue type: If parameter's entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map.
  • MapValue value: If parameter's entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
resolved_input

string

Final text input which was matched during MatchIntent. This value can be different from original input sent in request because of spelling correction or other processing.

match_type

MatchType

Type of this Match.

confidence

float

The confidence of this match. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation.

MatchType

Type of a Match.

Enums
MATCH_TYPE_UNSPECIFIED Not specified. Should never be used.
INTENT The query was matched to an intent.
DIRECT_INTENT The query directly triggered an intent.
PARAMETER_FILLING The query was used for parameter filling.
NO_MATCH No match was found for the query.
NO_INPUT Indicates an empty query.
EVENT The query directly triggered an event.
KNOWLEDGE_CONNECTOR The query was matched to a Knowledge Connector answer.
PLAYBOOK The query was handled by a [Playbook][Playbook].

MatchIntentRequest

Request of [MatchIntent][].

Fields
session

string

Required. The name of the session this query is sent to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>. If Environment ID is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate Session ID. It can be a random number or some type of session identifiers (preferably hashed). The length of the Session ID must not exceed 36 characters.

For more information, see the sessions guide.

Authorization requires the following IAM permission on the specified resource session:

  • dialogflow.sessions.detectIntent
query_params

QueryParameters

The parameters of this query.

query_input

QueryInput

Required. The input specification.

persist_parameter_changes

bool

Persist session parameter changes from query_params.

MatchIntentResponse

Response of [MatchIntent][].

Fields
matches[]

Match

Match results, if more than one, ordered descendingly by the confidence we have that the particular intent matches the query.

current_page

Page

The current Page. Some, not all fields are filled in this message, including but not limited to name and display_name.

Union field query. The original conversational query. query can be only one of the following:
text

string

If natural language text was provided as input, this field will contain a copy of the text.

trigger_intent

string

If an intent was provided as input, this field will contain a copy of the intent identifier. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

transcript

string

If natural language speech audio was provided as input, this field will contain the transcript for the audio.

trigger_event

string

If an event was provided as input, this field will contain a copy of the event name.

NluSettings

Settings related to NLU.

Fields
model_type

ModelType

Indicates the type of NLU model.

classification_threshold

float

To filter out false positive results and still get variety in matched natural language inputs for your agent, you can tune the machine learning classification threshold. If the returned score value is less than the threshold value, then a no-match event will be triggered. The score values range from 0.0 (completely uncertain) to 1.0 (completely certain). If set to 0.0, the default of 0.3 is used. You can set a separate classification threshold for the flow in each language enabled for the agent.

model_training_mode

ModelTrainingMode

Indicates NLU model training mode.

ModelTrainingMode

NLU model training mode.

Enums
MODEL_TRAINING_MODE_UNSPECIFIED Not specified. MODEL_TRAINING_MODE_AUTOMATIC will be used.
MODEL_TRAINING_MODE_AUTOMATIC NLU model training is automatically triggered when a flow gets modified. User can also manually trigger model training in this mode.
MODEL_TRAINING_MODE_MANUAL User needs to manually trigger NLU model training. Best for large flows whose models take long time to train.

ModelType

NLU model type.

Enums
MODEL_TYPE_UNSPECIFIED Not specified. MODEL_TYPE_STANDARD will be used.
MODEL_TYPE_STANDARD Use standard NLU model.
MODEL_TYPE_ADVANCED Use advanced NLU model.

OutputAudioConfig

Instructs the speech synthesizer how to generate the output audio content.

Fields
audio_encoding

OutputAudioEncoding

Required. Audio encoding of the synthesized audio content.

sample_rate_hertz

int32

Optional. The synthesis sample rate (in hertz) for this audio. If not provided, then the synthesizer will use the default sample rate based on the audio encoding. If this is different from the voice's natural sample rate, then the synthesizer will honor this request by converting to the desired sample rate (which might result in worse audio quality).

synthesize_speech_config

SynthesizeSpeechConfig

Optional. Configuration of how speech should be synthesized. If not specified, Agent.text_to_speech_settings is applied.

OutputAudioEncoding

Audio encoding of the output audio format in Text-To-Speech.

Enums
OUTPUT_AUDIO_ENCODING_UNSPECIFIED Not specified.
OUTPUT_AUDIO_ENCODING_LINEAR_16 Uncompressed 16-bit signed little-endian samples (Linear PCM). Audio content returned as LINEAR16 also contains a WAV header.
OUTPUT_AUDIO_ENCODING_MP3 MP3 audio at 32kbps.
OUTPUT_AUDIO_ENCODING_MP3_64_KBPS MP3 audio at 64kbps.
OUTPUT_AUDIO_ENCODING_OGG_OPUS Opus encoded audio wrapped in an ogg container. The result will be a file which can be played natively on Android, and in browsers (at least Chrome and Firefox). The quality of the encoding is considerably higher than MP3 while using approximately the same bitrate.
OUTPUT_AUDIO_ENCODING_MULAW 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
OUTPUT_AUDIO_ENCODING_ALAW 8-bit samples that compand 13-bit audio samples using G.711 PCMU/a-law.

Page

A Dialogflow CX conversation (session) can be described and visualized as a state machine. The states of a CX session are represented by pages.

For each flow, you define many pages, where your combined pages can handle a complete conversation on the topics the flow is designed for. At any given moment, exactly one page is the current page, the current page is considered active, and the flow associated with that page is considered active. Every flow has a special start page. When a flow initially becomes active, the start page page becomes the current page. For each conversational turn, the current page will either stay the same or transition to another page.

You configure each page to collect information from the end-user that is relevant for the conversational state represented by the page.

For more information, see the Page guide.

Fields
name

string

The unique identifier of the page. Required for the Pages.UpdatePage method. Pages.CreatePage populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

display_name

string

Required. The human-readable name of the page, unique within the flow.

description

string

The description of the page. The maximum length is 500 characters.

entry_fulfillment

Fulfillment

The fulfillment to call when the session is entering the page.

form

Form

The form associated with the page, used for collecting parameters relevant to the page.

transition_route_groups[]

string

Ordered list of TransitionRouteGroups added to the page. Transition route groups must be unique within a page. If the page links both flow-level transition route groups and agent-level transition route groups, the flow-level ones will have higher priority and will be put before the agent-level ones.

  • If multiple transition routes within a page scope refer to the same intent, then the precedence order is: page's transition route -> page's transition route group -> flow's transition routes.

  • If multiple transition route groups within a page contain the same intent, then the first group in the ordered list takes precedence.

Format:projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/transitionRouteGroups/<TransitionRouteGroupID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/transitionRouteGroups/<TransitionRouteGroupID> for agent-level groups.

transition_routes[]

TransitionRoute

A list of transitions for the transition rules of this page. They route the conversation to another page in the same flow, or another flow.

When we are in a certain page, the TransitionRoutes are evalauted in the following order:

  • TransitionRoutes defined in the page with intent specified.
  • TransitionRoutes defined in the transition route groups with intent specified.
  • TransitionRoutes defined in flow with intent specified.
  • TransitionRoutes defined in the transition route groups with intent specified.
  • TransitionRoutes defined in the page with only condition specified.
  • TransitionRoutes defined in the transition route groups with only condition specified.
event_handlers[]

EventHandler

Handlers associated with the page to handle events such as webhook errors, no match or no input.

advanced_settings

AdvancedSettings

Hierarchical advanced settings for this page. The settings exposed at the lower level overrides the settings exposed at the higher level.

knowledge_connector_settings

KnowledgeConnectorSettings

Optional. Knowledge connector configuration.

PageInfo

Represents page information communicated to and from the webhook.

Fields
current_page

string

Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the current page. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

display_name

string

Always present for WebhookRequest. Ignored for WebhookResponse. The display name of the current page.

form_info

FormInfo

Optional for both WebhookRequest and WebhookResponse. Information about the form.

FormInfo

Represents form information.

Fields
parameter_info[]

ParameterInfo

Optional for both WebhookRequest and WebhookResponse. The parameters contained in the form. Note that the webhook cannot add or remove any form parameter.

ParameterInfo

Represents parameter information.

Fields
display_name

string

Always present for WebhookRequest. Required for WebhookResponse. The human-readable name of the parameter, unique within the form. This field cannot be modified by the webhook.

required

bool

Optional for both WebhookRequest and WebhookResponse. Indicates whether the parameter is required. Optional parameters will not trigger prompts; however, they are filled if the user specifies them. Required parameters must be filled before form filling concludes.

state

ParameterState

Always present for WebhookRequest. Required for WebhookResponse. The state of the parameter. This field can be set to INVALID by the webhook to invalidate the parameter; other values set by the webhook will be ignored.

value

Value

Optional for both WebhookRequest and WebhookResponse. The value of the parameter. This field can be set by the webhook to change the parameter value.

just_collected

bool

Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the parameter value was just collected on the last conversation turn.

ParameterState

Represents the state of a parameter.

Enums
PARAMETER_STATE_UNSPECIFIED Not specified. This value should be never used.
EMPTY Indicates that the parameter does not have a value.
INVALID Indicates that the parameter value is invalid. This field can be used by the webhook to invalidate the parameter and ask the server to collect it from the user again.
FILLED Indicates that the parameter has a value.

Phrase

Text input which can be used for prompt or banned phrases.

Fields
text

string

Required. Text input which can be used for prompt or banned phrases.

QueryInput

Represents the query input. It can contain one of:

  1. A conversational query in the form of text.

  2. An intent query that specifies which intent to trigger.

  3. Natural language speech audio to be processed.

  4. An event to be triggered.

  5. DTMF digits to invoke an intent and fill in parameter value.

  6. The results of a tool executed by the client.

Fields
language_code

string

Required. The language of the input. See Language Support for a list of the currently supported language codes. Note that queries in the same session do not necessarily need to specify the same language.

Union field input. Required. The input specification. input can be only one of the following:
text

TextInput

The natural language text to be processed.

intent

IntentInput

The intent to be triggered.

audio

AudioInput

The natural language speech audio to be processed.

event

EventInput

The event to be triggered.

dtmf

DtmfInput

The DTMF event to be handled.

QueryParameters

Represents the parameters of a conversational query.

Fields
time_zone

string

The time zone of this conversational query from the time zone database, e.g., America/New_York, Europe/Paris. If not provided, the time zone specified in the agent is used.

geo_location

LatLng

The geo location of this conversational query.

session_entity_types[]

SessionEntityType

Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.

payload

Struct

This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form:

{
 "telephony": {
   "caller_id": "+18558363987"
 }
}
parameters

Struct

Additional parameters to be put into [session parameters][SessionInfo.parameters]. To remove a parameter from the session, clients should explicitly set the parameter value to null.

You can reference the session parameters in the agent with the following format: $session.params.parameter-id.

Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs:

  • MapKey type: string
  • MapKey value: parameter name
  • MapValue type: If parameter's entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map.
  • MapValue value: If parameter's entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
current_page

string

The unique identifier of the page to override the [current page][QueryResult.current_page] in the session. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

If current_page is specified, the previous state of the session will be ignored by Dialogflow, including the [previous page][QueryResult.current_page] and the [previous session parameters][QueryResult.parameters]. In most cases, current_page and parameters should be configured together to direct a session to a specific state.

disable_webhook

bool

Whether to disable webhook calls for this request.

analyze_query_text_sentiment

bool

Configures whether sentiment analysis should be performed. If not provided, sentiment analysis is not performed.

webhook_headers

map<string, string>

This field can be used to pass HTTP headers for a webhook call. These headers will be sent to webhook along with the headers that have been configured through Dialogflow web console. The headers defined within this field will overwrite the headers configured through Dialogflow console if there is a conflict. Header names are case-insensitive. Google's specified headers are not allowed. Including: "Host", "Content-Length", "Connection", "From", "User-Agent", "Accept-Encoding", "If-Modified-Since", "If-None-Match", "X-Forwarded-For", etc.

flow_versions[]

string

A list of flow versions to override for the request. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

If version 1 of flow X is included in this list, the traffic of flow X will go through version 1 regardless of the version configuration in the environment. Each flow can have at most one version specified in this list.

channel

string

The channel which this query is for.

If specified, only the ResponseMessage associated with the channel will be returned. If no ResponseMessage is associated with the channel, it falls back to the ResponseMessage with unspecified channel.

If unspecified, the ResponseMessage with unspecified channel will be returned.

session_ttl

Duration

Optional. Configure lifetime of the Dialogflow session. By default, a Dialogflow session remains active and its data is stored for 30 minutes after the last request is sent for the session. This value should be no longer than 1 day.

end_user_metadata

Struct

Optional. Information about the end-user to improve the relevance and accuracy of generative answers.

This will be interpreted and used by a language model, so, for good results, the data should be self-descriptive, and in a simple structure.

Example:

{
  "subscription plan": "Business Premium Plus",
  "devices owned": [
    {"model": "Google Pixel 7"},
    {"model": "Google Pixel Tablet"}
  ]
}
search_config

SearchConfig

Optional. Search configuration for UCS search queries.

populate_data_store_connection_signals

bool

Optional. If set to true and data stores are involved in serving the request then DetectIntentResponse.query_result.data_store_connection_signals will be filled with data that can help evaluations.

QueryResult

Represents the result of a conversational query.

Fields
language_code

string

The language that was triggered during intent detection. See Language Support for a list of the currently supported language codes.

parameters

Struct

The collected session parameters.

Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs:

  • MapKey type: string
  • MapKey value: parameter name
  • MapValue type: If parameter's entity type is a composite entity then use map, otherwise, depending on the parameter value type, it could be one of string, number, boolean, null, list or map.
  • MapValue value: If parameter's entity type is a composite entity then use map from composite entity property names to property values, otherwise, use parameter value.
response_messages[]

ResponseMessage

The list of rich messages returned to the client. Responses vary from simple text messages to more sophisticated, structured payloads used to drive complex logic.

webhook_statuses[]

Status

The list of webhook call status in the order of call sequence.

webhook_payloads[]

Struct

The list of webhook payload in WebhookResponse.payload, in the order of call sequence. If some webhook call fails or doesn't return any payload, an empty Struct would be used instead.

current_page

Page

The current Page. Some, not all fields are filled in this message, including but not limited to name and display_name.

intent
(deprecated)

Intent

The Intent that matched the conversational query. Some, not all fields are filled in this message, including but not limited to: name and display_name. This field is deprecated, please use QueryResult.match instead.

intent_detection_confidence
(deprecated)

float

The intent detection confidence. Values range from 0.0 (completely uncertain) to 1.0 (completely certain). This value is for informational purpose only and is only used to help match the best intent within the classification threshold. This value may change for the same end-user expression at any time due to a model retraining or change in implementation. This field is deprecated, please use QueryResult.match instead.

match

Match

Intent match result, could be an intent or an event.

diagnostic_info

Struct

The free-form diagnostic info. For example, this field could contain webhook call latency. The fields of this data can change without notice, so you should not write code that depends on its structure.

One of the fields is called "Alternative Matched Intents", which may aid with debugging. The following describes these intent results:

  • The list is empty if no intent was matched to end-user input.
  • Only intents that are referenced in the currently active flow are included.
  • The matched intent is included.
  • Other intents that could have matched end-user input, but did not match because they are referenced by intent routes that are out of scope, are included.
  • Other intents referenced by intent routes in scope that matched end-user input, but had a lower confidence score.
sentiment_analysis_result

SentimentAnalysisResult

The sentiment analyss result, which depends on analyze_query_text_sentiment, specified in the request.

advanced_settings

AdvancedSettings

Returns the current advanced settings including IVR settings. Even though the operations configured by these settings are performed by Dialogflow, the client may need to perform special logic at the moment. For example, if Dialogflow exports audio to Google Cloud Storage, then the client may need to wait for the resulting object to appear in the bucket before proceeding.

allow_answer_feedback

bool

Indicates whether the Thumbs up/Thumbs down rating controls are need to be shown for the response in the Dialogflow Messenger widget.

data_store_connection_signals

DataStoreConnectionSignals

Optional. Data store connection feature output signals. Filled only when data stores are involved in serving the query and DetectIntentRequest.populate_data_store_connection_signals is set to true in the request.

Union field query. The original conversational query. query can be only one of the following:
text

string

If natural language text was provided as input, this field will contain a copy of the text.

trigger_intent

string

If an intent was provided as input, this field will contain a copy of the intent identifier. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

transcript

string

If natural language speech audio was provided as input, this field will contain the transcript for the audio.

trigger_event

string

If an event was provided as input, this field will contain the name of the event.

dtmf

DtmfInput

If a DTMF was provided as input, this field will contain a copy of the DtmfInput.

ResourceName

Resource name and display name.

Fields
name

string

Name.

display_name

string

Display name.

ResponseMessage

Represents a response message that can be returned by a conversational agent.

Response messages are also used for output audio synthesis. The approach is as follows:

  • If at least one OutputAudioText response is present, then all OutputAudioText responses are linearly concatenated, and the result is used for output audio synthesis.
  • If the OutputAudioText responses are a mixture of text and SSML, then the concatenated result is treated as SSML; otherwise, the result is treated as either text or SSML as appropriate. The agent designer should ideally use either text or SSML consistently throughout the bot design.
  • Otherwise, all Text responses are linearly concatenated, and the result is used for output audio synthesis.

This approach allows for more sophisticated user experience scenarios, where the text displayed to the user may differ from what is heard.

Fields
response_type

ResponseType

Response type.

channel

string

The channel which the response is associated with. Clients can specify the channel via QueryParameters.channel, and only associated channel response will be returned.

Union field message. Required. The rich response message. message can be only one of the following:
text

Text

Returns a text response.

payload

Struct

Returns a response containing a custom, platform-specific payload.

conversation_success

ConversationSuccess

Indicates that the conversation succeeded.

output_audio_text

OutputAudioText

A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.

live_agent_handoff

LiveAgentHandoff

Hands off conversation to a human agent.

end_interaction

EndInteraction

Output only. A signal that indicates the interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only when the conversation reaches END_SESSION page. It is not supposed to be defined by the user.

It's guaranteed that there is at most one such message in each response.

play_audio

PlayAudio

Signal that the client should play an audio clip hosted at a client-specific URI. Dialogflow uses this to construct mixed_audio. However, Dialogflow itself does not try to read or process the URI in any way.

mixed_audio

MixedAudio

Output only. An audio response message composed of both the synthesized Dialogflow agent responses and responses defined via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.

telephony_transfer_call

TelephonyTransferCall

A signal that the client should transfer the phone call connected to this agent to a third-party endpoint.

knowledge_info_card

KnowledgeInfoCard

Represents info card for knowledge answers, to be better rendered in Dialogflow Messenger.

ConversationSuccess

Indicates that the conversation succeeded, i.e., the bot handled the issue that the customer talked to it about.

Dialogflow only uses this to determine which conversations should be counted as successful and doesn't process the metadata in this message in any way. Note that Dialogflow also considers conversations that get to the conversation end page as successful even if they don't return ConversationSuccess.

You may set this, for example: * In the entry_fulfillment of a Page if entering the page indicates that the conversation succeeded. * In a webhook response when you determine that you handled the customer issue.

Fields
metadata

Struct

Custom metadata. Dialogflow doesn't impose any structure on this.

EndInteraction

This type has no fields.

Indicates that interaction with the Dialogflow agent has ended. This message is generated by Dialogflow only and not supposed to be defined by the user.

KnowledgeInfoCard

This type has no fields.

Represents info card response. If the response contains generative knowledge prediction, Dialogflow will return a payload with Infobot Messenger compatible info card.

Otherwise, the info card response is skipped.

LiveAgentHandoff

Indicates that the conversation should be handed off to a live 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 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.

Fields
metadata

Struct

Custom metadata for your handoff procedure. Dialogflow doesn't impose any structure on this.

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. The external URIs are specified via play_audio. This message is generated by Dialogflow only and not supposed to be defined by the user.

Fields
segments[]

Segment

Segments this audio response is composed of.

Segment

Represents one segment of audio.

Fields
allow_playback_interruption

bool

Output only. 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:
audio

bytes

Raw audio synthesized from the Dialogflow agent's response using the output config specified in the request.

uri

string

Client-specific URI that points to an audio clip accessible to the client. Dialogflow does not impose any validation on it.

OutputAudioText

A text or ssml response that is preferentially used for TTS output audio synthesis, as described in the comment on the ResponseMessage message.

Fields
allow_playback_interruption

bool

Output only. Whether the playback of this message can be interrupted by the end user's speech and the client can then starts the next Dialogflow request.

Union field source. The source, which is either plain text or SSML. source can be only one of the following:
text

string

The raw text to be synthesized.

ssml

string

The SSML text to be synthesized. For more information, see SSML.

PlayAudio

Specifies an audio clip to be played by the client as part of the response.

Fields
audio_uri

string

Required. URI of the audio clip. Dialogflow does not impose any validation on this value. It is specific to the client that reads it.

allow_playback_interruption

bool

Output only. Whether the playback of this message can be interrupted by the end user's speech and the client can then starts the next Dialogflow request.

ResponseType

Represents different response types.

Enums
RESPONSE_TYPE_UNSPECIFIED Not specified.
ENTRY_PROMPT The response is from an entry prompt in the page.
PARAMETER_PROMPT The response is from form-filling prompt in the page.
HANDLER_PROMPT The response is from a transition route or an [event handler][EventHandler] in the page or flow or transition route group.

TelephonyTransferCall

Represents the signal that telles the client to transfer the phone call connected to the agent to a third-party endpoint.

Fields
Union field endpoint. Endpoint to transfer the call to. endpoint can be only one of the following:
phone_number

string

Transfer the call to a phone number in E.164 format.

Text

The text response message.

Fields
text[]

string

Required. A collection of text response variants. If multiple variants are defined, only one text response variant is returned at runtime.

allow_playback_interruption

bool

Output only. Whether the playback of this message can be interrupted by the end user's speech and the client can then starts the next Dialogflow request.

RestoreAgentRequest

The request message for Agents.RestoreAgent.

Fields
name

string

Required. The name of the agent to restore into. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.restore
restore_option

RestoreOption

Agent restore mode. If not specified, KEEP is assumed.

Union field agent. Required. The agent to restore. agent can be only one of the following:
agent_uri

string

The Google Cloud Storage URI to restore agent from. The format of this URI must be gs://<bucket-name>/<object-name>.

Dialogflow performs a read operation for the Cloud Storage object on the caller's behalf, so your request authentication must have read permissions for the object. For more information, see Dialogflow access control.

agent_content

bytes

Uncompressed raw byte content for agent.

git_source

GitSource

Setting for restoring from a git branch

GitSource

Settings for restoring from a git branch

Fields
tracking_branch

string

tracking branch for the git pull

RestoreOption

Restore option.

Enums
RESTORE_OPTION_UNSPECIFIED Unspecified. Treated as KEEP.
KEEP Always respect the settings from the exported agent file. It may cause a restoration failure if some settings (e.g. model type) are not supported in the target agent.
FALLBACK Fallback to default settings if some settings are not supported in the target agent.

RolloutConfig

The configuration for auto rollout.

Fields
rollout_steps[]

RolloutStep

Steps to roll out a flow version. Steps should be sorted by percentage in ascending order.

rollout_condition

string

The conditions that are used to evaluate the success of a rollout step. If not specified, all rollout steps will proceed to the next one unless failure conditions are met. E.g. "containment_rate > 60% AND callback_rate < 20%". See the conditions reference.

failure_condition

string

The conditions that are used to evaluate the failure of a rollout step. If not specified, no rollout steps will fail. E.g. "containment_rate < 10% OR average_turn_count < 3". See the conditions reference.

RolloutStep

A single rollout step with specified traffic allocation.

Fields
display_name

string

The name of the rollout step;

traffic_percent

int32

The percentage of traffic allocated to the flow version of this rollout step. (0%, 100%].

min_duration

Duration

The minimum time that this step should last. Should be longer than 1 hour. If not set, the default minimum duration for each step will be 1 hour.

RolloutState

State of the auto-rollout process.

Fields
step

string

Display name of the current auto rollout step.

step_index

int32

Index of the current step in the auto rollout steps list.

start_time

Timestamp

Start time of the current step.

RunContinuousTestMetadata

Metadata returned for the Environments.RunContinuousTest long running operation.

Fields
errors[]

TestError

The test errors.

RunContinuousTestRequest

The request message for Environments.RunContinuousTest.

Fields
environment

string

Required. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

Authorization requires the following IAM permission on the specified resource environment:

  • dialogflow.environments.get

RunContinuousTestResponse

The response message for Environments.RunContinuousTest.

Fields
continuous_test_result

ContinuousTestResult

The result for a continuous test run.

RunTestCaseMetadata

This type has no fields.

Metadata returned for the TestCases.RunTestCase long running operation. This message currently has no fields.

RunTestCaseRequest

The request message for TestCases.RunTestCase.

Fields
name

string

Required. Format of test case name to run: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.testcases.run
environment

string

Optional. Environment name. If not set, draft environment is assumed. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>.

RunTestCaseResponse

The response message for TestCases.RunTestCase.

Fields
result

TestCaseResult

The result.

SafetySettings

Settings for Generative Safety.

Fields
banned_phrases[]

Phrase

Banned phrases for generated text.

Phrase

Text input which can be used for prompt or banned phrases.

Fields
text

string

Required. Text input which can be used for prompt or banned phrases.

language_code

string

Required. Language code of the phrase.

SearchConfig

Search configuration for UCS search queries.

Fields
boost_specs[]

BoostSpecs

Optional. Boosting configuration for the datastores.

filter_specs[]

FilterSpecs

Optional. Filter configuration for the datastores.

SecuritySettings

Represents the settings related to security issues, such as data redaction and data retention. It may take hours for updates on the settings to propagate to all the related components and take effect.

Fields
name

string

Resource name of the settings. Required for the SecuritySettingsService.UpdateSecuritySettings method. SecuritySettingsService.CreateSecuritySettings populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/securitySettings/<SecuritySettingsID>.

display_name

string

Required. The human-readable name of the security settings, unique within the location.

redaction_strategy

RedactionStrategy

Strategy that defines how we do redaction.

redaction_scope

RedactionScope

Defines the data for which Dialogflow applies redaction. Dialogflow does not redact data that it does not have access to – for example, Cloud logging.

inspect_template

string

DLP inspect template name. Use this template to define inspect base settings.

The DLP Inspect Templates Reader role is needed on the Dialogflow service identity service account (has the form service-PROJECT_NUMBER@gcp-sa-dialogflow.iam.gserviceaccount.com) for your agent's project.

If empty, we use the default DLP inspect config.

The template name will have one of the following formats: projects/<ProjectID>/locations/<LocationID>/inspectTemplates/<TemplateID> OR organizations/<OrganizationID>/locations/<LocationID>/inspectTemplates/<TemplateID>

Note: inspect_template must be located in the same region as the SecuritySettings.

deidentify_template

string

DLP deidentify template name. Use this template to define de-identification configuration for the content.

The DLP De-identify Templates Reader role is needed on the Dialogflow service identity service account (has the form service-PROJECT_NUMBER@gcp-sa-dialogflow.iam.gserviceaccount.com) for your agent's project.

If empty, Dialogflow replaces sensitive info with [redacted] text.

The template name will have one of the following formats: projects/<ProjectID>/locations/<LocationID>/deidentifyTemplates/<TemplateID> OR organizations/<OrganizationID>/locations/<LocationID>/deidentifyTemplates/<TemplateID>

Note: deidentify_template must be located in the same region as the SecuritySettings.

purge_data_types[]

PurgeDataType

List of types of data to remove when retention settings triggers purge.

audio_export_settings

AudioExportSettings

Controls audio export settings for post-conversation analytics when ingesting audio to conversations via [Participants.AnalyzeContent][] or [Participants.StreamingAnalyzeContent][].

If retention_strategy is set to REMOVE_AFTER_CONVERSATION or [audio_export_settings.gcs_bucket][] is empty, audio export is disabled.

If audio export is enabled, audio is recorded and saved to [audio_export_settings.gcs_bucket][], subject to retention policy of [audio_export_settings.gcs_bucket][].

This setting won't effect audio input for implicit sessions via Sessions.DetectIntent or Sessions.StreamingDetectIntent.

insights_export_settings

InsightsExportSettings

Controls conversation exporting settings to Insights after conversation is completed.

If retention_strategy is set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no matter what you configure here.

Union field data_retention. Specifies how data is retained. Note that even if the data is purged due to retention policy, we may still hold it in backup storage for a few days without allowing direct readings. data_retention can be only one of the following:
retention_window_days

int32

Retains the data for the specified number of days. User must set a value lower than Dialogflow's default 365d TTL (30 days for Agent Assist traffic), higher value will be ignored and use default. Setting a value higher than that has no effect. A missing value or setting to 0 also means we use default TTL. When data retention configuration is changed, it only applies to the data created after the change; the TTL of existing data created before the change stays intact.

retention_strategy

RetentionStrategy

Specifies the retention behavior defined by SecuritySettings.RetentionStrategy.

AudioExportSettings

Settings for exporting audio.

Fields
gcs_bucket

string

Cloud Storage bucket to export audio record to. Setting this field would grant the Storage Object Creator role to the Dialogflow Service Agent. API caller that tries to modify this field should have the permission of storage.buckets.setIamPolicy.

audio_export_pattern

string

Filename pattern for exported audio.

enable_audio_redaction

bool

Enable audio redaction if it is true. Note that this only redacts end-user audio data; Synthesised audio from the virtual agent is not redacted.

audio_format

AudioFormat

File format for exported audio file. Currently only in telephony recordings.

store_tts_audio

bool

Whether to store TTS audio. By default, TTS audio from the virtual agent is not exported.

AudioFormat

File format for exported audio file. Currently only in telephony recordings.

Enums
AUDIO_FORMAT_UNSPECIFIED Unspecified. Do not use.
MULAW G.711 mu-law PCM with 8kHz sample rate.
MP3 MP3 file format.
OGG OGG Vorbis.

InsightsExportSettings

Settings for exporting conversations to Insights.

Fields
enable_insights_export

bool

If enabled, we will automatically exports conversations to Insights and Insights runs its analyzers.

PurgeDataType

Type of data we purge after retention settings triggers purge.

Enums
PURGE_DATA_TYPE_UNSPECIFIED Unspecified. Do not use.
DIALOGFLOW_HISTORY Dialogflow history. This does not include Cloud logging, which is owned by the user - not Dialogflow.

RedactionScope

Defines what types of data to redact.

Enums
REDACTION_SCOPE_UNSPECIFIED Don't redact any kind of data.
REDACT_DISK_STORAGE On data to be written to disk or similar devices that are capable of holding data even if power is disconnected. This includes data that are temporarily saved on disk.

RedactionStrategy

Defines how we redact data.

Enums
REDACTION_STRATEGY_UNSPECIFIED Do not redact.
REDACT_WITH_SERVICE Call redaction service to clean up the data to be persisted.

RetentionStrategy

Defines how long we retain persisted data that contains sensitive info.

Enums
RETENTION_STRATEGY_UNSPECIFIED Retains the persisted data with Dialogflow's internal default 365d TTLs.
REMOVE_AFTER_CONVERSATION Removes data when the conversation ends. If there is no [Conversation][] explicitly established, a default conversation ends when the corresponding Dialogflow session ends.

SentimentAnalysisResult

The result of sentiment analysis. Sentiment analysis inspects user input and identifies the prevailing subjective opinion, especially to determine a user's attitude as positive, negative, or neutral.

Fields
score

float

Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).

magnitude

float

A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).

SessionEntityType

Session entity types are referred to as User entity types and are entities that are built for an individual user such as favorites, preferences, playlists, and so on.

You can redefine a session entity type at the session level to extend or replace a custom entity type at the user session level (we refer to the entity types defined at the agent level as "custom entity types").

Note: session entity types apply to all queries, regardless of the language.

For more information about entity types, see the Dialogflow documentation.

Fields
name

string

Required. The unique identifier of the session entity type. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>/entityTypes/<EntityTypeID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>/entityTypes/<EntityTypeID>. If Environment ID is not specified, we assume default 'draft' environment.

entity_override_mode

EntityOverrideMode

Required. Indicates whether the additional data should override or supplement the custom entity type definition.

entities[]

Entity

Required. The collection of entities to override or supplement the custom entity type.

EntityOverrideMode

The types of modifications for the session entity type.

Enums
ENTITY_OVERRIDE_MODE_UNSPECIFIED Not specified. This value should be never used.
ENTITY_OVERRIDE_MODE_OVERRIDE The collection of session entities overrides the collection of entities in the corresponding custom entity type.
ENTITY_OVERRIDE_MODE_SUPPLEMENT

The collection of session entities extends the collection of entities in the corresponding custom entity type.

Note: Even in this override mode calls to ListSessionEntityTypes, GetSessionEntityType, CreateSessionEntityType and UpdateSessionEntityType only return the additional entities added in this session entity type. If you want to get the supplemented list, please call EntityTypes.GetEntityType on the custom entity type and merge.

SessionInfo

Represents session information communicated to and from the webhook.

Fields
session

string

Always present for WebhookRequest. Ignored for WebhookResponse. The unique identifier of the session. This field can be used by the webhook to identify a session. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID> if environment is specified.

parameters

map<string, Value>

Optional for WebhookRequest. Optional for WebhookResponse. All parameters collected from forms and intents during the session. Parameters can be created, updated, or removed by the webhook. To remove a parameter from the session, the webhook should explicitly set the parameter value to null in WebhookResponse. The map is keyed by parameters' display names.

SpeechModelVariant

Variant of the specified Speech model to use.

See the Cloud Speech documentation for which models have different variants. For example, the "phone_call" model has both a standard and an enhanced variant. When you use an enhanced model, you will generally receive higher quality results than for a standard model.

Enums
SPEECH_MODEL_VARIANT_UNSPECIFIED No model variant specified. In this case Dialogflow defaults to USE_BEST_AVAILABLE.
USE_BEST_AVAILABLE Use the best available variant of the [Speech model][InputAudioConfig.model] that the caller is eligible for.
USE_STANDARD Use standard model variant even if an enhanced model is available. See the Cloud Speech documentation for details about enhanced models.
USE_ENHANCED

Use an enhanced model variant:

  • If an enhanced variant does not exist for the given model and request language, Dialogflow falls back to the standard variant.

The Cloud Speech documentation describes which models have enhanced variants.

SpeechToTextSettings

Settings related to speech recognition.

Fields
enable_speech_adaptation

bool

Whether to use speech adaptation for speech recognition.

SpeechWordInfo

Information for a word recognized by the speech recognizer.

Fields
word

string

The word this info is for.

start_offset

Duration

Time offset relative to the beginning of the audio that corresponds to the start of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.

end_offset

Duration

Time offset relative to the beginning of the audio that corresponds to the end of the spoken word. This is an experimental feature and the accuracy of the time offset can vary.

confidence

float

The Speech confidence between 0.0 and 1.0 for this word. A higher number indicates an estimated greater likelihood that the recognized word is correct. The default of 0.0 is a sentinel value indicating that confidence was not set.

This field is not guaranteed to be fully stable over time for the same audio input. Users should also not rely on it to always be provided.

SsmlVoiceGender

Gender of the voice as described in SSML voice element.

Enums
SSML_VOICE_GENDER_UNSPECIFIED An unspecified gender, which means that the client doesn't care which gender the selected voice will have.
SSML_VOICE_GENDER_MALE A male voice.
SSML_VOICE_GENDER_FEMALE A female voice.
SSML_VOICE_GENDER_NEUTRAL A gender-neutral voice.

StartExperimentRequest

The request message for Experiments.StartExperiment.

Fields
name

string

Required. Resource name of the experiment to start. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/experiments/<ExperimentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.experiments.start

StopExperimentRequest

The request message for Experiments.StopExperiment.

Fields
name

string

Required. Resource name of the experiment to stop. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/experiments/<ExperimentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.experiments.stop

StreamingDetectIntentRequest

The top-level message sent by the client to the Sessions.StreamingDetectIntent method.

Multiple request messages should be sent in order:

  1. The first message must contain session, query_input plus optionally query_params. If the client wants to receive an audio response, it should also contain output_audio_config.

  2. If query_input was set to query_input.audio.config, all subsequent messages must contain query_input.audio.audio to continue with Speech recognition. If you decide to rather detect an intent from text input after you already started Speech recognition, please send a message with query_input.text.

However, note that:

* Dialogflow will bill you for the audio duration so far.
* Dialogflow discards all Speech recognition results in favor of the
  input text.
* Dialogflow will use the language code from the first message.

After you sent all input, you must half-close or abort the request stream.

Fields
session

string

The name of the session this query is sent to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>. If Environment ID is not specified, we assume default 'draft' environment. It's up to the API caller to choose an appropriate Session ID. It can be a random number or some type of session identifiers (preferably hashed). The length of the Session ID must not exceed 36 characters. Note: session must be set in the first request.

For more information, see the sessions guide.

Note: Always use agent versions for production traffic. See Versions and environments.

Authorization requires the following IAM permission on the specified resource session:

  • dialogflow.sessions.streamingDetectIntent
query_params

QueryParameters

The parameters of this query.

query_input

QueryInput

Required. The input specification.

output_audio_config

OutputAudioConfig

Instructs the speech synthesizer how to generate the output audio.

enable_partial_response

bool

Enable partial detect intent response. If this flag is not enabled, response stream still contains only one final DetectIntentResponse even if some Fulfillments in the agent have been configured to return partial responses.

enable_debugging_info

bool

If true, StreamingDetectIntentResponse.debugging_info will get populated.

StreamingDetectIntentResponse

The top-level message returned from the StreamingDetectIntent method.

Multiple response messages (N) can be returned in order.

The first (N-1) responses set either the recognition_result or detect_intent_response field, depending on the request:

  • If the StreamingDetectIntentRequest.query_input.audio field was set, and the StreamingDetectIntentRequest.enable_partial_response field was false, the recognition_result field is populated for each of the (N-1) responses. See the StreamingRecognitionResult message for details about the result message sequence.

  • If the StreamingDetectIntentRequest.enable_partial_response field was true, the detect_intent_response field is populated for each of the (N-1) responses, where 1 <= N <= 4. These responses set the DetectIntentResponse.response_type field to PARTIAL.

For the final Nth response message, the detect_intent_response is fully populated, and DetectIntentResponse.response_type is set to FINAL.

Fields
debugging_info

CloudConversationDebuggingInfo

Debugging info that would get populated when StreamingDetectIntentRequest.enable_debugging_info is set to true.

Union field response. The output response. response can be only one of the following:
recognition_result

StreamingRecognitionResult

The result of speech recognition.

detect_intent_response

DetectIntentResponse

The response from detect intent.

StreamingRecognitionResult

Contains a speech recognition result corresponding to a portion of the audio that is currently being processed or an indication that this is the end of the single requested utterance.

While end-user audio is being processed, Dialogflow sends a series of results. Each result may contain a transcript value. A transcript represents a portion of the utterance. While the recognizer is processing audio, transcript values may be interim values or finalized values. Once a transcript is finalized, the is_final value is set to true and processing continues for the next transcript.

If StreamingDetectIntentRequest.query_input.audio.config.single_utterance was true, and the recognizer has completed processing audio, the message_type value is set to `END_OF_SINGLE_UTTERANCE and the following (last) result contains the last finalized transcript.

The complete end-user utterance is determined by concatenating the finalized transcript values received for the series of results.

In the following example, single utterance is enabled. In the case where single utterance is not enabled, result 7 would not occur.

Num | transcript              | message_type            | is_final
--- | ----------------------- | ----------------------- | --------
1   | "tube"                  | TRANSCRIPT              | false
2   | "to be a"               | TRANSCRIPT              | false
3   | "to be"                 | TRANSCRIPT              | false
4   | "to be or not to be"    | TRANSCRIPT              | true
5   | "that's"                | TRANSCRIPT              | false
6   | "that is                | TRANSCRIPT              | false
7   | unset                   | END_OF_SINGLE_UTTERANCE | unset
8   | " that is the question" | TRANSCRIPT              | true

Concatenating the finalized transcripts with is_final set to true, the complete utterance becomes "to be or not to be that is the question".

Fields
message_type

MessageType

Type of the result message.

transcript

string

Transcript text representing the words that the user spoke. Populated if and only if message_type = TRANSCRIPT.

is_final

bool

If false, the StreamingRecognitionResult represents an interim result that may change. If true, the recognizer will not return any further hypotheses about this piece of the audio. May only be populated for message_type = TRANSCRIPT.

confidence

float

The Speech confidence between 0.0 and 1.0 for the current portion of audio. A higher number indicates an estimated greater likelihood that the recognized words are correct. The default of 0.0 is a sentinel value indicating that confidence was not set.

This field is typically only provided if is_final is true and you should not rely on it being accurate or even set.

stability

float

An estimate of the likelihood that the speech recognizer will not change its guess about this interim recognition result: * If the value is unspecified or 0.0, Dialogflow didn't compute the stability. In particular, Dialogflow will only provide stability for TRANSCRIPT results with is_final = false. * Otherwise, the value is in (0.0, 1.0] where 0.0 means completely unstable and 1.0 means completely stable.

speech_word_info[]

SpeechWordInfo

Word-specific information for the words recognized by Speech in transcript. Populated if and only if message_type = TRANSCRIPT and [InputAudioConfig.enable_word_info] is set.

speech_end_offset

Duration

Time offset of the end of this Speech recognition result relative to the beginning of the audio. Only populated for message_type = TRANSCRIPT.

language_code

string

Detected language code for the transcript.

MessageType

Type of the response message.

Enums
MESSAGE_TYPE_UNSPECIFIED Not specified. Should never be used.
TRANSCRIPT Message contains a (possibly partial) transcript.
END_OF_SINGLE_UTTERANCE This event indicates that the server has detected the end of the user's speech utterance and expects no additional speech. Therefore, the server will not process additional audio (although it may subsequently return additional results). The client should stop sending additional audio data, half-close the gRPC connection, and wait for any additional results until the server closes the gRPC connection. This message is only sent if single_utterance was set to true, and is not used otherwise.

SubmitAnswerFeedbackRequest

The request to set the feedback for a bot answer.

Fields
session

string

Required. The name of the session the feedback was sent to.

Authorization requires the following IAM permission on the specified resource session:

  • dialogflow.sessions.detectIntent
response_id

string

Required. ID of the response to update its feedback. This is the same as DetectIntentResponse.response_id.

answer_feedback

AnswerFeedback

Required. Feedback provided for a bot answer.

update_mask

FieldMask

Optional. The mask to control which fields to update. If the mask is not present, all fields will be updated.

SynthesizeSpeechConfig

Configuration of how speech should be synthesized.

Fields
speaking_rate

double

Optional. Speaking rate/speed, in the range [0.25, 4.0]. 1.0 is the normal native speed supported by the specific voice. 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed. Any other values < 0.25 or > 4.0 will return an error.

pitch

double

Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means increase 20 semitones from the original pitch. -20 means decrease 20 semitones from the original pitch.

volume_gain_db

double

Optional. Volume gain (in dB) of the normal native volume supported by the specific voice, in the range [-96.0, 16.0]. If unset, or set to a value of 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB) will play at approximately half the amplitude of the normal native signal amplitude. A value of +6.0 (dB) will play at approximately twice the amplitude of the normal native signal amplitude. We strongly recommend not to exceed +10 (dB) as there's usually no effective increase in loudness for any value greater than that.

effects_profile_id[]

string

Optional. An identifier which selects 'audio effects' profiles that are applied on (post synthesized) text to speech. Effects are applied on top of each other in the order they are given.

voice

VoiceSelectionParams

Optional. The desired voice of the synthesized audio.

TestCase

Represents a test case.

Fields
name

string

The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>.

tags[]

string

Tags are short descriptions that users may apply to test cases for organizational and filtering purposes. Each tag should start with "#" and has a limit of 30 characters.

display_name

string

Required. The human-readable name of the test case, unique within the agent. Limit of 200 characters.

notes

string

Additional freeform notes about the test case. Limit of 400 characters.

test_config

TestConfig

Config for the test case.

test_case_conversation_turns[]

ConversationTurn

The conversation turns uttered when the test case was created, in chronological order. These include the canonical set of agent utterances that should occur when the agent is working properly.

creation_time

Timestamp

Output only. When the test was created.

last_test_result

TestCaseResult

The latest test result.

TestCaseError

Error info for importing a test.

Fields
test_case

TestCase

The test case.

status

Status

The status associated with the test case.

TestCaseResult

Represents a result from running a test case in an agent environment.

Fields
name

string

The resource name for the test case result. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>/results/<TestCaseResultID>.

environment

string

Environment where the test was run. If not set, it indicates the draft environment.

conversation_turns[]

ConversationTurn

The conversation turns uttered during the test case replay in chronological order.

test_result

TestResult

Whether the test case passed in the agent environment.

test_time

Timestamp

The time that the test was run.

TestConfig

Represents configurations for a test case.

Fields
tracking_parameters[]

string

Session parameters to be compared when calculating differences.

flow

string

Flow name to start the test case with. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Only one of flow and page should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.

page

string

The page to start the test case with. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

Only one of flow and page should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.

TestError

Error info for running a test.

Fields
test_case

string

The test case resource name.

status

Status

The status associated with the test.

test_time

Timestamp

The timestamp when the test was completed.

TestResult

The test result for a test case and an agent environment.

Enums
TEST_RESULT_UNSPECIFIED Not specified. Should never be used.
PASSED The test passed.
FAILED The test did not pass.

TestRunDifference

The description of differences between original and replayed agent output.

Fields
type

DiffType

The type of diff.

description

string

A human readable description of the diff, showing the actual output vs expected output.

DiffType

What part of the message replay differs from the test case.

Enums
DIFF_TYPE_UNSPECIFIED Should never be used.
INTENT The intent.
PAGE The page.
PARAMETERS The parameters.
UTTERANCE The message utterance.
FLOW The flow.

TextInput

Represents the natural language text to be processed.

Fields
text

string

Required. The UTF-8 encoded natural language text to be processed.

TextToSpeechSettings

Settings related to speech synthesizing.

Fields
synthesize_speech_configs

map<string, SynthesizeSpeechConfig>

Configuration of how speech should be synthesized, mapping from language (https://cloud.google.com/dialogflow/cx/docs/reference/language) to SynthesizeSpeechConfig.

These settings affect:

TrainFlowRequest

The request message for Flows.TrainFlow.

Fields
name

string

Required. The flow to train. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.train

TransitionCoverage

Transition coverage represents the percentage of all possible page transitions (page-level transition routes and event handlers, excluding transition route groups) present within any of a parent's test cases.

Fields
transitions[]

Transition

The list of Transitions present in the agent.

coverage_score

float

The percent of transitions in the agent that are covered.

Transition

A transition in a page.

Fields
source

TransitionNode

The start node of a transition.

index

int32

The index of a transition in the transition list. Starting from 0.

target

TransitionNode

The end node of a transition.

covered

bool

Whether the transition is covered by at least one of the agent's test cases.

Union field detail. The detailed transition. detail can be only one of the following:
transition_route

TransitionRoute

Intent route or condition route.

event_handler

EventHandler

Event handler.

TransitionNode

The source or target of a transition.

Fields
Union field kind. A TransitionNode can be either a page or a flow. kind can be only one of the following:
page

Page

Indicates a transition to a Page. Only some fields such as name and displayname will be set.

flow

Flow

Indicates a transition to a Flow. Only some fields such as name and displayname will be set.

TransitionRoute

A transition route specifies a intent that can be matched and/or a data condition that can be evaluated during a session. When a specified transition is matched, the following actions are taken in order:

  • If there is a trigger_fulfillment associated with the transition, it will be called.
  • If there is a target_page associated with the transition, the session will transition into the specified page.
  • If there is a target_flow associated with the transition, the session will transition into the specified flow.
Fields
name

string

Output only. The unique identifier of this transition route.

description

string

Optional. The description of the transition route. The maximum length is 500 characters.

intent

string

The unique identifier of an Intent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>. Indicates that the transition can only happen when the given intent is matched. At least one of intent or condition must be specified. When both intent and condition are specified, the transition can only happen when both are fulfilled.

condition

string

The condition to evaluate against form parameters or session parameters.

See the conditions reference. At least one of intent or condition must be specified. When both intent and condition are specified, the transition can only happen when both are fulfilled.

trigger_fulfillment

Fulfillment

The fulfillment to call when the condition is satisfied. At least one of trigger_fulfillment and target must be specified. When both are defined, trigger_fulfillment is executed first.

Union field target. The target to transition to, either a page in the same host flow (the flow that owns this TransitionRoute), or another flow in the same agent. target can be only one of the following:
target_page

string

The target page to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

target_flow

string

The target flow to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

TransitionRouteGroup

A TransitionRouteGroup represents a group of TransitionRoutes to be used by a Page.

Fields
name

string

The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/transitionRouteGroups/<TransitionRouteGroupID> .

display_name

string

Required. The human-readable name of the transition route group, unique within the flow. The display name can be no longer than 30 characters.

transition_routes[]

TransitionRoute

Transition routes associated with the TransitionRouteGroup.

TransitionRouteGroupCoverage

Transition route group coverage represents the percentage of all possible transition routes present within any of a parent's test cases. The results are grouped by the transition route group.

Fields
coverages[]

Coverage

Transition route group coverages.

coverage_score

float

The percent of transition routes in all the transition route groups that are covered.

Coverage

Coverage result message for one transition route group.

Fields
route_group

TransitionRouteGroup

Transition route group metadata. Only name and displayName will be set.

transitions[]

Transition

The list of transition routes and coverage in the transition route group.

coverage_score

float

The percent of transition routes in the transition route group that are covered.

Transition

A transition coverage in a transition route group.

Fields
transition_route

TransitionRoute

Intent route or condition route.

covered

bool

Whether the transition route is covered by at least one of the agent's test cases.

TurnSignals

Collection of all signals that were extracted for a single turn of the conversation.

Fields
no_match

bool

Whether NLU predicted NO_MATCH.

no_user_input

bool

Whether user provided no input.

dtmf_used

bool

Whether user was using DTMF input.

user_escalated

bool

Whether user was specifically asking for a live agent.

agent_escalated

bool

Whether agent responded with LiveAgentHandoff fulfillment.

reached_end_page

bool

Whether turn resulted in End Session page.

webhook_statuses[]

string

Human-readable statuses of the webhooks triggered during this turn.

failure_reasons[]

FailureReason

Failure reasons of the turn.

sentiment_score

float

Sentiment score of the user utterance if sentiment was enabled.

sentiment_magnitude

float

Sentiment magnitude of the user utterance if sentiment was enabled.

FailureReason

Reason why the conversation turn has failed.

Enums
FAILURE_REASON_UNSPECIFIED Failure reason is not assigned.
FAILED_INTENT Whether NLU failed to recognize user intent.
FAILED_WEBHOOK Whether webhook failed during the turn.

UpdateAgentRequest

The request message for Agents.UpdateAgent.

Fields
agent

Agent

Required. The agent to update.

Authorization requires the following IAM permission on the specified resource agent:

  • dialogflow.agents.update
update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdateEntityTypeRequest

The request message for EntityTypes.UpdateEntityType.

Fields
entity_type

EntityType

Required. The entity type to update.

Authorization requires the following IAM permission on the specified resource entityType:

  • dialogflow.entityTypes.update
language_code

string

The language of the following fields in entity_type:

  • EntityType.entities.value
  • EntityType.entities.synonyms
  • EntityType.excluded_phrases.value

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

update_mask

FieldMask

The mask to control which fields get updated.

UpdateEnvironmentRequest

The request message for Environments.UpdateEnvironment.

Fields
environment

Environment

Required. The environment to update.

Authorization requires the following IAM permission on the specified resource environment:

  • dialogflow.environments.update
update_mask

FieldMask

Required. The mask to control which fields get updated.

UpdateExperimentRequest

The request message for Experiments.UpdateExperiment.

Fields
experiment

Experiment

Required. The experiment to update.

Authorization requires the following IAM permission on the specified resource experiment:

  • dialogflow.experiments.update
update_mask

FieldMask

Required. The mask to control which fields get updated.

UpdateFlowRequest

The request message for Flows.UpdateFlow.

Fields
flow

Flow

Required. The flow to update.

Authorization requires the following IAM permission on the specified resource flow:

  • dialogflow.flows.update
update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

language_code

string

The language of the following fields in flow:

  • Flow.event_handlers.trigger_fulfillment.messages
  • Flow.event_handlers.trigger_fulfillment.conditional_cases
  • Flow.transition_routes.trigger_fulfillment.messages
  • Flow.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

UpdateGenerativeSettingsRequest

Request for UpdateGenerativeSettings RPC.

Fields
generative_settings

GenerativeSettings

Required. Generative settings to update.

update_mask

FieldMask

Optional. The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdateGeneratorRequest

The request message for Generators.UpdateGenerator.

Fields
generator

Generator

Required. The generator to update.

Authorization requires the following IAM permission on the specified resource generator:

  • dialogflow.generators.update
language_code

string

The language to list generators for.

update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdateIntentRequest

The request message for Intents.UpdateIntent.

Fields
intent

Intent

Required. The intent to update.

Authorization requires the following IAM permission on the specified resource intent:

  • dialogflow.intents.update
language_code

string

The language of the following fields in intent:

  • Intent.training_phrases.parts.text

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdatePageRequest

The request message for Pages.UpdatePage.

Fields
page

Page

Required. The page to update.

Authorization requires the following IAM permission on the specified resource page:

  • dialogflow.pages.update
language_code

string

The language of the following fields in page:

  • Page.entry_fulfillment.messages
  • Page.entry_fulfillment.conditional_cases
  • Page.event_handlers.trigger_fulfillment.messages
  • Page.event_handlers.trigger_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.initial_prompt_fulfillment.messages * Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditional_cases
  • Page.form.parameters.fill_behavior.reprompt_event_handlers.messages * Page.form.parameters.fill_behavior.reprompt_event_handlers.conditional_cases
  • Page.transition_routes.trigger_fulfillment.messages
  • Page.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdateSecuritySettingsRequest

The request message for SecuritySettingsService.UpdateSecuritySettings.

Fields
security_settings

SecuritySettings

Required. [SecuritySettings] object that contains values for each of the fields to update.

Authorization requires the following IAM permission on the specified resource securitySettings:

  • dialogflow.securitySettings.update
update_mask

FieldMask

Required. The mask to control which fields get updated. If the mask is not present, all fields will be updated.

UpdateSessionEntityTypeRequest

The request message for SessionEntityTypes.UpdateSessionEntityType.

Fields
session_entity_type

SessionEntityType

Required. The session entity type to update. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>/entityTypes/<EntityTypeID> or projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>/entityTypes/<EntityTypeID>. If Environment ID is not specified, we assume default 'draft' environment.

Authorization requires the following IAM permission on the specified resource sessionEntityType:

  • dialogflow.sessionEntityTypes.update
update_mask

FieldMask

The mask to control which fields get updated.

UpdateTestCaseRequest

The request message for TestCases.UpdateTestCase.

Fields
test_case

TestCase

Required. The test case to update.

Authorization requires the following IAM permission on the specified resource testCase:

  • dialogflow.testcases.update
update_mask

FieldMask

Required. The mask to specify which fields should be updated. The creationTime and lastTestResult cannot be updated.

UpdateTransitionRouteGroupRequest

The request message for TransitionRouteGroups.UpdateTransitionRouteGroup.

Fields
transition_route_group

TransitionRouteGroup

Required. The transition route group to update.

Authorization requires the following IAM permission on the specified resource transitionRouteGroup:

  • dialogflow.transitionRouteGroups.update
update_mask

FieldMask

The mask to control which fields get updated.

language_code

string

The language of the following fields in TransitionRouteGroup:

  • TransitionRouteGroup.transition_routes.trigger_fulfillment.messages * TransitionRouteGroup.transition_routes.trigger_fulfillment.conditional_cases

If not specified, the agent's default language is used. Many languages are supported. Note: languages must be enabled in the agent before they can be used.

UpdateVersionRequest

The request message for Versions.UpdateVersion.

Fields
version

Version

Required. The version to update.

Authorization requires the following IAM permission on the specified resource version:

  • dialogflow.versions.update
update_mask

FieldMask

Required. The mask to control which fields get updated. Currently only description and display_name can be updated.

UpdateWebhookRequest

The request message for Webhooks.UpdateWebhook.

Fields
webhook

Webhook

Required. The webhook to update.

Authorization requires the following IAM permission on the specified resource webhook:

  • dialogflow.webhooks.update
update_mask

FieldMask

The mask to control which fields get updated. If the mask is not present, all fields will be updated.

ValidateAgentRequest

The request message for Agents.ValidateAgent.

Fields
name

string

Required. The agent to validate. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.agents.validate
language_code

string

If not specified, the agent's default language is used.

ValidateFlowRequest

The request message for Flows.ValidateFlow.

Fields
name

string

Required. The flow to validate. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

Authorization requires the following IAM permission on the specified resource name:

  • dialogflow.flows.validate
language_code

string

If not specified, the agent's default language is used.

ValidationMessage

Agent/flow validation message.

Fields
resource_type

ResourceType

The type of the resources where the message is found.

resources[]
(deprecated)

string

The names of the resources where the message is found.

resource_names[]

ResourceName

The resource names of the resources where the message is found.

severity

Severity

Indicates the severity of the message.

detail

string

The message detail.

ResourceType

Resource types.

Enums
RESOURCE_TYPE_UNSPECIFIED Unspecified.
AGENT Agent.
INTENT Intent.
INTENT_TRAINING_PHRASE Intent training phrase.
INTENT_PARAMETER Intent parameter.
INTENTS Multiple intents.
INTENT_TRAINING_PHRASES Multiple training phrases.
ENTITY_TYPE Entity type.
ENTITY_TYPES Multiple entity types.
WEBHOOK Webhook.
FLOW Flow.
PAGE Page.
PAGES Multiple pages.
TRANSITION_ROUTE_GROUP Transition route group.
AGENT_TRANSITION_ROUTE_GROUP Agent transition route group.

Severity

Severity level.

Enums
SEVERITY_UNSPECIFIED Unspecified.
INFO The agent doesn't follow Dialogflow best practices.
WARNING The agent may not behave as expected.
ERROR The agent may experience failures.

VariantsHistory

The history of variants update.

Fields
update_time

Timestamp

Update time of the variants.

Union field variants. The variants updated. We currently only support single variant experiment. variants can be only one of the following:
version_variants

VersionVariants

The flow versions as the variants.

Version

Represents a version of a flow.

Fields
name

string

Format: projects//locations//agents//flows//versions/. Version ID is a self-increasing number generated by Dialogflow upon version creation.

display_name

string

Required. The human-readable name of the version. Limit of 64 characters.

description

string

The description of the version. The maximum length is 500 characters. If exceeded, the request is rejected.

nlu_settings

NluSettings

Output only. The NLU settings of the flow at version creation.

create_time

Timestamp

Output only. Create time of the version.

state

State

Output only. The state of this version. This field is read-only and cannot be set by create and update methods.

State

The state of the version.

Enums
STATE_UNSPECIFIED Not specified. This value is not used.
RUNNING Version is not ready to serve (e.g. training is running).
SUCCEEDED Training has succeeded and this version is ready to serve.
FAILED Version training failed.

VersionVariants

A list of flow version variants.

Fields
variants[]

Variant

A list of flow version variants.

Variant

A single flow version with specified traffic allocation.

Fields
version

string

The name of the flow version. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.

traffic_allocation

float

Percentage of the traffic which should be routed to this version of flow. Traffic allocation for a single flow must sum up to 1.0.

is_control_group

bool

Whether the variant is for the control group.

VoiceSelectionParams

Description of which voice to use for speech synthesis.

Fields
name

string

Optional. The name of the voice. If not set, the service will choose a voice based on the other parameters such as language_code and ssml_gender.

For the list of available voices, please refer to Supported voices and languages.

ssml_gender

SsmlVoiceGender

Optional. The preferred gender of the voice. If not set, the service will choose a voice based on the other parameters such as language_code and name. Note that this is only a preference, not requirement. If a voice of the appropriate gender is not available, the synthesizer substitutes a voice with a different gender rather than failing the request.

Webhook

Webhooks host the developer's business logic. During a session, webhooks allow the developer to use the data extracted by Dialogflow's natural language processing to generate dynamic responses, validate collected data, or trigger actions on the backend.

Fields
name

string

The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>.

display_name

string

Required. The human-readable name of the webhook, unique within the agent.

timeout

Duration

Webhook execution timeout. Execution is considered failed if Dialogflow doesn't receive a response from webhook at the end of the timeout period. Defaults to 5 seconds, maximum allowed timeout is 30 seconds.

disabled

bool

Indicates whether the webhook is disabled.

Union field webhook. Required. The webhook configuration. webhook can be only one of the following:
generic_web_service

GenericWebService

Configuration for a generic web service.

service_directory

ServiceDirectoryConfig

Configuration for a Service Directory service.

GenericWebService

Represents configuration for a generic web service.

Fields
uri

string

Required. The webhook URI for receiving POST requests. It must use https protocol.

username
(deprecated)

string

The user name for HTTP Basic authentication.

password
(deprecated)

string

The password for HTTP Basic authentication.

request_headers

map<string, string>

The HTTP request headers to send together with webhook requests.

allowed_ca_certs[]

bytes

Optional. Specifies a list of allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, Dialogflow will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command,

   openssl x509 -req -days 200 -in example.com.csr \
     -signkey example.com.key \
     -out example.com.crt \
     -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")
oauth_config

OAuthConfig

Optional. The OAuth configuration of the webhook. If specified, Dialogflow will initiate the OAuth client credential flow to exchange an access token from the 3rd party platform and put it in the auth header.

service_agent_auth

ServiceAgentAuth

Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header.

webhook_type

WebhookType

Optional. Type of the webhook.

http_method

HttpMethod

Optional. HTTP method for the flexible webhook calls. Standard webhook always uses POST.

request_body

string

Optional. Defines a custom JSON object as request body to send to flexible webhook.

parameter_mapping

map<string, string>

Optional. Maps the values extracted from specific fields of the flexible webhook response into session parameters. - Key: session parameter name - Value: field path in the webhook response

HttpMethod

HTTP method to use when calling webhooks.

Enums
HTTP_METHOD_UNSPECIFIED HTTP method not specified.
POST HTTP POST Method.
GET HTTP GET Method.
HEAD HTTP HEAD Method.
PUT HTTP PUT Method.
DELETE HTTP DELETE Method.
PATCH HTTP PATCH Method.
OPTIONS HTTP OPTIONS Method.

OAuthConfig

Represents configuration of OAuth client credential flow for 3rd party API authentication.

Fields
client_id

string

Required. The client ID provided by the 3rd party platform.

client_secret

string

Required. The client secret provided by the 3rd party platform.

token_endpoint

string

Required. The token endpoint provided by the 3rd party platform to exchange an access token.

scopes[]

string

Optional. The OAuth scopes to grant.

ServiceAgentAuth

Indicate the auth token type generated from the Diglogflow service agent.

Enums
SERVICE_AGENT_AUTH_UNSPECIFIED Service agent auth type unspecified. Default to ID_TOKEN.
NONE No token used.
ID_TOKEN Use ID token generated from service agent. This can be used to access Cloud Function and Cloud Run after you grant Invoker role to service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com.
ACCESS_TOKEN Use access token generated from service agent. This can be used to access other Google Cloud APIs after you grant required roles to service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com.

WebhookType

Represents the type of webhook configuration.

Enums
WEBHOOK_TYPE_UNSPECIFIED Default value. This value is unused.
STANDARD Represents a standard webhook.
FLEXIBLE Represents a flexible webhook.

ServiceDirectoryConfig

Represents configuration for a Service Directory service.

Fields
service

string

Required. The name of Service Directory service. Format: projects/<ProjectID>/locations/<LocationID>/namespaces/<NamespaceID>/services/<ServiceID>. Location ID of the service directory must be the same as the location of the agent.

generic_web_service

GenericWebService

Generic Service configuration of this webhook.

WebhookRequest

The request message for a webhook call. The request is sent as a JSON object and the field names will be presented in camel cases.

You may see undocumented fields in an actual request. These fields are used internally by Dialogflow and should be ignored.

Fields
detect_intent_response_id

string

Always present. The unique identifier of the DetectIntentResponse that will be returned to the API caller.

language_code

string

The language code specified in the [original request][QueryInput.language_code].

fulfillment_info

FulfillmentInfo

Always present. Information about the fulfillment that triggered this webhook call.

intent_info

IntentInfo

Information about the last matched intent.

page_info

PageInfo

Information about page status.

session_info

SessionInfo

Information about session status.

messages[]

ResponseMessage

The list of rich message responses to present to the user. Webhook can choose to append or replace this list in WebhookResponse.fulfillment_response;

payload

Struct

Custom data set in QueryParameters.payload.

sentiment_analysis_result

SentimentAnalysisResult

The sentiment analysis result of the current user request. The field is filled when sentiment analysis is configured to be enabled for the request.

language_info

LanguageInfo

Information about the language of the request.

Union field query. The original conversational query. query can be only one of the following:
text

string

If natural language text was provided as input, this field will contain a copy of the text.

trigger_intent

string

If an intent was provided as input, this field will contain a copy of the intent identifier. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

transcript

string

If natural language speech audio was provided as input, this field will contain the transcript for the audio.

trigger_event

string

If an event was provided as input, this field will contain the name of the event.

dtmf_digits

string

If DTMF was provided as input, this field will contain the DTMF digits.

FulfillmentInfo

Represents fulfillment information communicated to the webhook.

Fields
tag

string

Always present. The value of the Fulfillment.tag field will be populated in this field by Dialogflow when the associated webhook is called. The tag is typically used by the webhook service to identify which fulfillment is being called, but it could be used for other purposes.

IntentInfo

Represents intent information communicated to the webhook.

Fields
last_matched_intent

string

Always present. The unique identifier of the last matched intent. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.

display_name

string

Always present. The display name of the last matched intent.

parameters

map<string, IntentParameterValue>

Parameters identified as a result of intent matching. This is a map of the name of the identified parameter to the value of the parameter identified from the user's utterance. All parameters defined in the matched intent that are identified will be surfaced here.

confidence

float

The confidence of the matched intent. Values range from 0.0 (completely uncertain) to 1.0 (completely certain).

IntentParameterValue

Represents a value for an intent parameter.

Fields
original_value

string

Always present. Original text value extracted from user utterance.

resolved_value

Value

Always present. Structured value for the parameter extracted from user utterance.

SentimentAnalysisResult

Represents the result of sentiment analysis.

Fields
score

float

Sentiment score between -1.0 (negative sentiment) and 1.0 (positive sentiment).

magnitude

float

A non-negative number in the [0, +inf) range, which represents the absolute magnitude of sentiment, regardless of score (positive or negative).

WebhookResponse

The response message for a webhook call.

Fields
fulfillment_response

FulfillmentResponse

The fulfillment response to send to the user. This field can be omitted by the webhook if it does not intend to send any response to the user.

page_info

PageInfo

Information about page status. This field can be omitted by the webhook if it does not intend to modify page status.

session_info

SessionInfo

Information about session status. This field can be omitted by the webhook if it does not intend to modify session status.

payload

Struct

Value to append directly to QueryResult.webhook_payloads.

Union field transition. The target to transition to. This can be set optionally to indicate an immediate transition to a different page in the same host flow, or a different flow in the same agent. transition can be only one of the following:
target_page

string

The target page to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>.

target_flow

string

The target flow to transition to. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>.

FulfillmentResponse

Represents a fulfillment response to the user.

Fields
messages[]

ResponseMessage

The list of rich message responses to present to the user.

merge_behavior

MergeBehavior

Merge behavior for messages.

MergeBehavior

Defines merge behavior for messages.

Enums
MERGE_BEHAVIOR_UNSPECIFIED Not specified. APPEND will be used.
APPEND messages will be appended to the list of messages waiting to be sent to the user.
REPLACE messages will replace the list of messages waiting to be sent to the user.