Package google.cloud.dialogflow.v2beta1

Index

Agents

Service for managing Agents.

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 ZIP file.

Operation <response: ExportAgentResponse>

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.

GetValidationResult

rpc GetValidationResult(GetValidationResultRequest) returns (ValidationResult)

Gets agent validation result. Agent validation is performed during training time and is updated automatically when training is completed.

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.

ImportAgent

rpc ImportAgent(ImportAgentRequest) returns (Operation)

Imports the specified agent from a ZIP file.

Uploads new intents and entity types without deleting the existing ones. Intents and entity types with the same name are replaced with the new versions from ImportAgentRequest. After the import, the imported draft agent will be trained automatically (unless disabled in agent settings). However, once the import is done, training may not be completed yet. Please call TrainAgent and wait for the operation it returns in order to train explicitly.

Operation <response: google.protobuf.Empty> An operation which tracks when importing is complete. It only tracks when the draft agent is updated not when it is done training.

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 ZIP file.

Replaces the current agent version with a new one. All the intents and entity types in the older version are deleted. After the restore, the restored draft agent will be trained automatically (unless disabled in agent settings). However, once the restore is done, training may not be completed yet. Please call TrainAgent and wait for the operation it returns in order to train explicitly.

Operation <response: google.protobuf.Empty> An operation which tracks when restoring is complete. It only tracks when the draft agent is updated not when it is done training.

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.

SearchAgents

rpc SearchAgents(SearchAgentsRequest) returns (SearchAgentsResponse)

Returns the list of agents. Since there is at most one conversational agent per project, this method is useful primarily for listing all agents across projects the caller has access to. One can achieve that with a wildcard project collection id "-". Refer to List Sub-Collections.

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.

SetAgent

rpc SetAgent(SetAgentRequest) returns (Agent)

Creates/updates 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.

TrainAgent

rpc TrainAgent(TrainAgentRequest) returns (Operation)

Trains the specified agent.

Operation <response: google.protobuf.Empty>

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.

Contexts

Service for managing Contexts.

CreateContext

rpc CreateContext(CreateContextRequest) returns (Context)

Creates a context.

If the specified context already exists, overrides the context.

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.

DeleteAllContexts

rpc DeleteAllContexts(DeleteAllContextsRequest) returns (Empty)

Deletes all active contexts 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.

DeleteContext

rpc DeleteContext(DeleteContextRequest) returns (Empty)

Deletes the specified context.

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.

GetContext

rpc GetContext(GetContextRequest) returns (Context)

Retrieves the specified context.

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.

ListContexts

rpc ListContexts(ListContextsRequest) returns (ListContextsResponse)

Returns the list of all contexts 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.

UpdateContext

rpc UpdateContext(UpdateContextRequest) returns (Context)

Updates the specified context.

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.

Documents

Service for managing knowledge Documents.

CreateDocument

rpc CreateDocument(CreateDocumentRequest) returns (Operation)

Creates a new document.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

DeleteDocument

rpc DeleteDocument(DeleteDocumentRequest) returns (Operation)

Deletes the specified document.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

GetDocument

rpc GetDocument(GetDocumentRequest) returns (Document)

Retrieves the specified document.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

ListDocuments

rpc ListDocuments(ListDocumentsRequest) returns (ListDocumentsResponse)

Returns the list of all documents of the knowledge base.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

ReloadDocument

rpc ReloadDocument(ReloadDocumentRequest) returns (Operation)

Reloads the specified document from its specified source, content_uri or content. The previously loaded content of the document will be deleted. Note: Even when the content of the document has not changed, there still may be side effects because of internal implementation changes.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

UpdateDocument

rpc UpdateDocument(UpdateDocumentRequest) returns (Operation)

Updates the specified document.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

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.

BatchCreateEntities

rpc BatchCreateEntities(BatchCreateEntitiesRequest) returns (Operation)

Creates multiple new entities in the specified entity type.

Operation <response: google.protobuf.Empty>

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.

BatchDeleteEntities

rpc BatchDeleteEntities(BatchDeleteEntitiesRequest) returns (Operation)

Deletes entities in the specified entity type.

Operation <response: google.protobuf.Empty>

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.

BatchDeleteEntityTypes

rpc BatchDeleteEntityTypes(BatchDeleteEntityTypesRequest) returns (Operation)

Deletes entity types in the specified agent. Operation <response: google.protobuf.Empty>

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.

BatchUpdateEntities

rpc BatchUpdateEntities(BatchUpdateEntitiesRequest) returns (Operation)

Updates or creates multiple entities in the specified entity type. This method does not affect entities in the entity type that aren't explicitly specified in the request.

Operation <response: google.protobuf.Empty>

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.

BatchUpdateEntityTypes

rpc BatchUpdateEntityTypes(BatchUpdateEntityTypesRequest) returns (Operation)

Updates/Creates multiple entity types in the specified agent. Operation <response: BatchUpdateEntityTypesResponse>

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.

CreateEntityType

rpc CreateEntityType(CreateEntityTypeRequest) returns (EntityType)

Creates an entity type 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.

DeleteEntityType

rpc DeleteEntityType(DeleteEntityTypeRequest) returns (Empty)

Deletes 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.

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.

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.

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.

ListEnvironments

rpc ListEnvironments(ListEnvironmentsRequest) returns (ListEnvironmentsResponse)

Returns the list of all non-draft environments of 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.

Fulfillments

Service for managing Fulfillments.

GetFulfillment

rpc GetFulfillment(GetFulfillmentRequest) returns (Fulfillment)

Retrieves the fulfillment.

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.

UpdateFulfillment

rpc UpdateFulfillment(UpdateFulfillmentRequest) returns (Fulfillment)

Updates the fulfillment.

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.

BatchDeleteIntents

rpc BatchDeleteIntents(BatchDeleteIntentsRequest) returns (Operation)

Deletes intents in the specified agent.

Operation <response: google.protobuf.Empty>

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.

BatchUpdateIntents

rpc BatchUpdateIntents(BatchUpdateIntentsRequest) returns (Operation)

Updates/Creates multiple intents in the specified agent.

Operation <response: BatchUpdateIntentsResponse>

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.

CreateIntent

rpc CreateIntent(CreateIntentRequest) returns (Intent)

Creates an intent 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.

DeleteIntent

rpc DeleteIntent(DeleteIntentRequest) returns (Empty)

Deletes the specified intent and its direct or indirect followup intents.

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.

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.

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.

KnowledgeBases

Service for managing KnowledgeBases.

CreateKnowledgeBase

rpc CreateKnowledgeBase(CreateKnowledgeBaseRequest) returns (KnowledgeBase)

Creates a knowledge base.

Note: The projects.agent.knowledgeBases resource is deprecated; only use projects.knowledgeBases.

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.

DeleteKnowledgeBase

rpc DeleteKnowledgeBase(DeleteKnowledgeBaseRequest) returns (Empty)

Deletes the specified knowledge base.

Note: The projects.agent.knowledgeBases resource is deprecated; only use projects.knowledgeBases.

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.

GetKnowledgeBase

rpc GetKnowledgeBase(GetKnowledgeBaseRequest) returns (KnowledgeBase)

Retrieves the specified knowledge base.

Note: The projects.agent.knowledgeBases resource is deprecated; only use projects.knowledgeBases.

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.

ListKnowledgeBases

rpc ListKnowledgeBases(ListKnowledgeBasesRequest) returns (ListKnowledgeBasesResponse)

Returns the list of all knowledge bases of the specified agent.

Note: The projects.agent.knowledgeBases resource is deprecated; only use projects.knowledgeBases.

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.

UpdateKnowledgeBase

rpc UpdateKnowledgeBase(UpdateKnowledgeBaseRequest) returns (KnowledgeBase)

Updates the specified knowledge base.

Note: The projects.agent.knowledgeBases resource is deprecated; only use projects.knowledgeBases.

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.

If the specified session entity type already exists, overrides the session entity type.

This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

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.

This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

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.

This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

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.

This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

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.

This method doesn't work with Google Assistant integration. Contact Dialogflow support if you need to use session entities with Google Assistant integration.

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 service used for session interactions.

For more information, see the API interactions guide.

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 contexts and session entity types to be updated, which in turn might affect results of future queries.

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).

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.

Agent

A Dialogflow agent is a virtual agent that handles conversations with your end-users. It is a natural language understanding module that understands the nuances of human language. Dialogflow translates end-user text or audio during a conversation to structured data that your apps and services can understand. You design and build a Dialogflow agent to handle the types of conversations required for your system.

For more information about agents, see the Agent guide.

Fields
parent

string

Required. The project of this agent. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>

display_name

string

Required. The name of this agent.

default_language_code

string

Required. 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 Update method.

supported_language_codes[]

string

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

time_zone

string

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

description

string

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

avatar_uri

string

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

enable_logging

bool

Optional. Determines whether this agent should log conversation queries.

match_mode

MatchMode

Optional. Determines how intents are detected from user queries.

classification_threshold

float

Optional. 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 fallback intent will be triggered or, if there are no fallback intents defined, no intent 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.

api_version

ApiVersion

Optional. API version displayed in Dialogflow console. If not specified, V2 API is assumed. Clients are free to query different service endpoints for different API versions. However, bots connectors and webhook calls will follow the specified API version.

tier

Tier

Optional. The agent tier. If not specified, TIER_STANDARD is assumed.

ApiVersion

API version for the agent.

Enums
API_VERSION_UNSPECIFIED Not specified.
API_VERSION_V1 Legacy V1 API.
API_VERSION_V2 V2 API.
API_VERSION_V2_BETA_1 V2beta1 API.

MatchMode

Match mode determines how intents are detected from user queries.

Enums
MATCH_MODE_UNSPECIFIED Not specified.
MATCH_MODE_HYBRID Best for agents with a small number of examples in intents and/or wide use of templates syntax and composite entities.
MATCH_MODE_ML_ONLY Can be used for agents with a large number of examples in intents, especially the ones using @sys.any or very large custom entities.

Tier

Represents the agent tier.

Enums
TIER_UNSPECIFIED Not specified. This value should never be used.
TIER_STANDARD Standard tier.
TIER_ENTERPRISE Enterprise tier (Essentials).
TIER_ENTERPRISE_PLUS Enterprise tier (Plus).

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.

BatchCreateEntitiesRequest

The request message for EntityTypes.BatchCreateEntities.

Fields
parent

string

Required. The name of the entity type to create entities in. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

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

  • dialogflow.entityTypes.batchCreateEntities
entities[]

Entity

Required. The entities to create.

language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

BatchDeleteEntitiesRequest

The request message for EntityTypes.BatchDeleteEntities.

Fields
parent

string

Required. The name of the entity type to delete entries for. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

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

  • dialogflow.entityTypes.batchDeleteEntities
entity_values[]

string

Required. The reference values of the entities to delete. Note that these are not fully-qualified names, i.e. they don't start with projects/<Project ID>.

language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

BatchDeleteEntityTypesRequest

The request message for EntityTypes.BatchDeleteEntityTypes.

Fields
parent

string

Required. The name of the agent to delete all entities types for. Supported formats: - projects/<Project ID>/agent, - projects/<Project ID>/locations/<Location ID>/agent.

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

  • dialogflow.entityTypes.batchDelete
entity_type_names[]

string

Required. The names entity types to delete. All names must point to the same agent as parent.

BatchDeleteIntentsRequest

The request message for Intents.BatchDeleteIntents.

Fields
parent

string

Required. The name of the agent to delete all entities types for. Supported formats:

  • projects/<Project ID>/agent
  • projects/<Project ID>/locations/<Location ID>/agent

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

  • dialogflow.intents.batchDelete
intents[]

Intent

Required. The collection of intents to delete. Only intent name must be filled in.

BatchUpdateEntitiesRequest

The request message for EntityTypes.BatchUpdateEntities.

Fields
parent

string

Required. The name of the entity type to update or create entities in. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

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

  • dialogflow.entityTypes.batchUpdateEntities
entities[]

Entity

Required. The entities to update or create.

language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

update_mask

FieldMask

Optional. The mask to control which fields get updated.

BatchUpdateEntityTypesRequest

The request message for EntityTypes.BatchUpdateEntityTypes.

Fields
parent

string

Required. The name of the agent to update or create entity types in. Supported formats: - projects/<Project ID>/agent - projects/<Project ID>/locations/<Location ID>/agent

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

  • dialogflow.entityTypes.batchUpdate
language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

update_mask

FieldMask

Optional. The mask to control which fields get updated.

Union field entity_type_batch. The source of the entity type batch.

For each entity type in the batch:

  • If name is specified, we update an existing entity type.
  • If name is not specified, we create a new entity type. entity_type_batch can be only one of the following:
entity_type_batch_uri

string

The URI to a Google Cloud Storage file containing entity types to update or create. The file format can either be a serialized proto (of EntityBatch type) or a JSON object. Note: The URI must start with "gs://".

entity_type_batch_inline

EntityTypeBatch

The collection of entity types to update or create.

BatchUpdateEntityTypesResponse

The response message for EntityTypes.BatchUpdateEntityTypes.

Fields
entity_types[]

EntityType

The collection of updated or created entity types.

BatchUpdateIntentsRequest

The request message for Intents.BatchUpdateIntents.

Fields
parent

string

Required. The name of the agent to update or create intents in. Supported formats:

  • projects/<Project ID>/agent
  • projects/<Project ID>/locations/<Location ID>/agent

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

  • dialogflow.intents.batchUpdate
language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

update_mask

FieldMask

Optional. The mask to control which fields get updated.

intent_view

IntentView

Optional. The resource view to apply to the returned intent.

Union field intent_batch. Required. The source of the intent batch.

For each intent in the batch:

  • If name is specified, we update an existing intent.
  • If name is not specified, we create a new intent. intent_batch can be only one of the following:
intent_batch_uri

string

The URI to a Google Cloud Storage file containing intents to update or create. The file format can either be a serialized proto (of IntentBatch type) or JSON object. Note: The URI must start with "gs://".

intent_batch_inline

IntentBatch

The collection of intents to update or create.

BatchUpdateIntentsResponse

The response message for Intents.BatchUpdateIntents.

Fields
intents[]

Intent

The collection of updated or created intents.

Context

Dialogflow contexts are similar to natural language context. If a person says to you "they are orange", you need context in order to understand what "they" is referring to. Similarly, for Dialogflow to handle an end-user expression like that, it needs to be provided with context in order to correctly match an intent.

Using contexts, you can control the flow of a conversation. You can configure contexts for an intent by setting input and output contexts, which are identified by string names. When an intent is matched, any configured output contexts for that intent become active. While any contexts are active, Dialogflow is more likely to match intents that are configured with input contexts that correspond to the currently active contexts.

For more information about context, see the Contexts guide.

Fields
name

string

Required. The unique identifier of the context. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>,

The Context ID is always converted to lowercase, may only contain characters in a-zA-Z0-9_-% and may be at most 250 bytes long.

If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

The following context names are reserved for internal use by Dialogflow. You should not use these contexts or create contexts with these names:

  • __system_counters__
  • *_id_dialog_context
  • *_dialog_params_size
lifespan_count

int32

Optional. The number of conversational query requests after which the context expires. The default is 0. If set to 0, the context expires immediately. Contexts expire automatically after 20 minutes if there are no matching queries.

parameters

Struct

Optional. The collection of parameters associated with this context.

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: map
    • Else: string or number, depending on parameter value type
  • MapValue value:
    • If parameter's entity type is a composite entity: map from composite entity property names to property values
    • Else: parameter value

CreateContextRequest

The request message for Contexts.CreateContext.

Fields
parent

string

Required. The session to create a context for. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>, -projects//locations//agent/sessions/, -projects//agent/environments//users//sessions/, -projects//locations//agent/environments//users//sessions/`,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.contexts.create
context

Context

Required. The context to create.

CreateDocumentRequest

Request message for Documents.CreateDocument.

Fields
parent

string

Required. The knowledge base to create a document for. Format: projects/<Project ID>/knowledgeBases/<Knowledge Base ID>.

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

  • dialogflow.documents.create
document

Document

Required. The document to create.

CreateEntityTypeRequest

The request message for EntityTypes.CreateEntityType.

Fields
parent

string

Required. The agent to create a entity type for. Supported formats: - projects/<Project ID>/agent - projects/<Project ID>/locations/<Location ID>/agent

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

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

CreateIntentRequest

The request message for Intents.CreateIntent.

Fields
parent

string

Required. The agent to create a intent for. Supported formats:

  • projects/<Project ID>/agent
  • projects/<Project ID>/locations/<Location ID>/agent

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

  • dialogflow.intents.create
intent

Intent

Required. The intent to create.

language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

intent_view

IntentView

Optional. The resource view to apply to the returned intent.

CreateKnowledgeBaseRequest

Request message for KnowledgeBases.CreateKnowledgeBase.

Fields
parent

string

Required. The project to create a knowledge base for. Format: projects/<Project ID>.

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

  • dialogflow.knowledgeBases.create
knowledge_base

KnowledgeBase

Required. The knowledge base to create.

CreateSessionEntityTypeRequest

The request message for SessionEntityTypes.CreateSessionEntityType.

Fields
parent

string

Required. The session to create a session entity type for. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>, -projects//locations//agent/sessions/, -projects//agent/environments//users//sessions/, -projects//locations//agent/environments//users//sessions/`,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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.

DeleteAgentRequest

The request message for Agents.DeleteAgent.

Fields
parent

string

Required. The project that the agent to delete is associated with. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>.

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

  • dialogflow.agents.delete

DeleteAllContextsRequest

The request message for Contexts.DeleteAllContexts.

Fields
parent

string

Required. The name of the session to delete all contexts from. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>, -projects//locations//agent/sessions/, -projects//agent/environments//users//sessions/, -projects//locations//agent/environments//users//sessions/`,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.contexts.deleteAll

DeleteContextRequest

The request message for Contexts.DeleteContext.

Fields
name

string

Required. The name of the context to delete. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.contexts.delete

DeleteDocumentRequest

Request message for Documents.DeleteDocument.

Fields
name

string

Required. The name of the document to delete. Format: projects/<Project ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>.

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

  • dialogflow.documents.delete

DeleteEntityTypeRequest

The request message for EntityTypes.DeleteEntityType.

Fields
name

string

Required. The name of the entity type to delete. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

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

  • dialogflow.entityTypes.delete

DeleteIntentRequest

The request message for Intents.DeleteIntent.

Fields
name

string

Required. The name of the intent to delete. If this intent has direct or indirect followup intents, we also delete them.

Supported formats:

  • projects/<Project ID>/agent/intents/<Intent ID>
  • projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>

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

  • dialogflow.intents.delete

DeleteKnowledgeBaseRequest

Request message for KnowledgeBases.DeleteKnowledgeBase.

Fields
name

string

Required. The name of the knowledge base to delete. Format: projects/<Project ID>/knowledgeBases/<Knowledge Base ID>.

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

  • dialogflow.knowledgeBases.delete
force

bool

Optional. Force deletes the knowledge base. When set to true, any documents in the knowledge base are also deleted.

DeleteSessionEntityTypeRequest

The request message for SessionEntityTypes.DeleteSessionEntityType.

Fields
name

string

Required. The name of the entity type to delete. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/locations/<Location ID>/agent/environments/ <Environment ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.sessionEntityTypes.delete

DetectIntentRequest

The request to detect user's intent.

Fields
session

string

Required. The name of the session this query is sent to. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>, -projects//locations//agent/sessions/, -projects//agent/environments//users//sessions/, -projects//locations//agent/environments//users//sessions/`,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we are using "-". It's up to the API caller to choose an appropriate Session ID and User Id. They can be a random number or some type of user and session identifiers (preferably hashed). The length of the Session ID and User ID must not exceed 36 characters. For more information, see the API interactions 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. It can be set to:

  1. an audio config which instructs the speech recognizer how to process the speech audio,

  2. a conversational query in the form of text, or

  3. an event that specifies which intent to trigger.

output_audio_config

OutputAudioConfig

Instructs the speech synthesizer how to generate the output audio. If this field is not set and agent-level speech synthesizer is not configured, no output audio is generated.

output_audio_config_mask

FieldMask

Mask for output_audio_config indicating which settings in this request-level config should override speech synthesizer settings defined at agent-level.

If unspecified or empty, output_audio_config replaces the agent-level config in its entirety.

input_audio

bytes

The natural language speech audio to be processed. This field should be populated iff query_input is set to an input audio config. A single request can contain up to 1 minute of speech audio data.

DetectIntentResponse

The message returned from the DetectIntent method.

Fields
response_id

string

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 selected results of the conversational query or event processing. See alternative_query_results for additional potential results.

alternative_query_results[]

QueryResult

If Knowledge Connectors are enabled, there could be more than one result returned for a given query or event, and this field will contain all results except for the top one, which is captured in query_result. The alternative results are ordered by decreasing QueryResult.intent_detection_confidence. If Knowledge Connectors are disabled, this field will be empty until multiple responses for regular intents are supported, at which point those additional results will be surfaced here.

webhook_status

Status

Specifies the status of the webhook request.

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.fulfillment_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.

Document

A knowledge document to be used by a KnowledgeBase.

For more information, see the knowledge base guide.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

Fields
name

string

Optional. The document resource name. The name must be empty when creating a document. Format: projects/<Project ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>.

display_name

string

Required. The display name of the document. The name must be 1024 bytes or less; otherwise, the creation request fails.

mime_type

string

Required. The MIME type of this document.

knowledge_types[]

KnowledgeType

Required. The knowledge type of document content.

enable_auto_reload

bool

Optional. If true, we try to automatically reload the document every day (at a time picked by the system). If false or unspecified, we don't try to automatically reload the document.

Currently you can only enable automatic reload for documents sourced from a public url, see source field for the source types.

Reload status can be tracked in latest_reload_status. If a reload fails, we will keep the document unchanged.

If a reload fails with internal errors, the system will try to reload the document on the next day. If a reload fails with non-retriable errors (e.g. PERMISION_DENIED), the system will not try to reload the document anymore. You need to manually reload the document successfully by calling ReloadDocument and clear the errors.

latest_reload_status

ReloadStatus

Output only. The time and status of the latest reload. This reload may have been triggered automatically or manually and may not have succeeded.

Union field source. The source of this document. source can be only one of the following:
content_uri

string

The URI where the file content is located.

For documents stored in Google Cloud Storage, these URIs must have the form gs://<bucket-name>/<object-name>.

NOTE: External URLs must correspond to public webpages, i.e., they must be indexed by Google Search. In particular, URLs for showing documents in Google Cloud Storage (i.e. the URL in your browser) are not supported. Instead use the gs:// format URI described above.

content
(deprecated)

string

The raw content of the document. This field is only permitted for EXTRACTIVE_QA and FAQ knowledge types. Note: This field is in the process of being deprecated, please use raw_content instead.

raw_content

bytes

The raw content of the document. This field is only permitted for EXTRACTIVE_QA and FAQ knowledge types.

KnowledgeType

The knowledge type of document content.

Enums
KNOWLEDGE_TYPE_UNSPECIFIED The type is unspecified or arbitrary.
FAQ

The document content contains question and answer pairs as either HTML or CSV. Typical FAQ HTML formats are parsed accurately, but unusual formats may fail to be parsed.

CSV must have questions in the first column and answers in the second, with no header. Because of this explicit format, they are always parsed accurately.

EXTRACTIVE_QA Documents for which unstructured text is extracted and used for question answering.

ReloadStatus

The status of a reload attempt.

Fields
time

Timestamp

Output only. The time of a reload attempt. This reload may have been triggered automatically or manually and may not have succeeded.

status

Status

Output only. The status of a reload attempt or the initial load.

EntityType

Each intent parameter has a type, called the entity type, which dictates exactly how data from an end-user expression is extracted.

Dialogflow provides predefined system entities that can match many common types of data. For example, there are system entities for matching dates, times, colors, email addresses, and so on. You can also create your own custom entities for matching custom data. For example, you could define a vegetable entity that can match the types of vegetables available for purchase with a grocery store agent.

For more information, see the Entity guide.

Fields
name

string

The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes methods. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

display_name

string

Required. The name of the entity type.

kind

Kind

Required. Indicates the kind of entity type.

auto_expansion_mode

AutoExpansionMode

Optional. Indicates whether the entity type can be automatically expanded.

entities[]

Entity

Optional. The collection of entity entries associated with the entity type.

enable_fuzzy_extraction

bool

Optional. Enables fuzzy entity extraction during classification.

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 reference 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.

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 reference value.
KIND_LIST List entity types contain a set of entries that do not map to reference 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.

EntityTypeBatch

This message is a wrapper around a collection of entity types.

Fields
entity_types[]

EntityType

A collection of entity types.

Environment

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.

For more information, see the versions and environments guide.

Fields
name

string

Output only. The unique identifier of this agent environment. Supported formats: - projects/<Project Number / ID>/agent/environments/<Environment ID> - projects/<Project Number / ID>/locations/<Location ID>/agent/environments/<Environment ID>

description

string

Optional. The developer-provided description for this environment. The maximum length is 500 characters. If exceeded, the request is rejected.

agent_version

string

Optional. The agent version loaded into this environment. Supported formats: - projects/<Project ID>/agent/versions/<Version ID> - projects/<Project ID>/locations/<Location ID>/agent/versions/<Version ID>

state

State

Output only. The state of this environment. This field is read-only, i.e., it cannot be set by create and update methods.

update_time

Timestamp

Output only. The last update time of this environment. This field is read-only, i.e., it cannot be set by create and update methods.

State

Represents an environment state. When an environment is pointed to a new agent version, the environment is temporarily set to the LOADING state. During that time, the environment keeps on serving the previous version of the agent. After the new agent version is done loading, the environment is set back to the RUNNING state.

Enums
STATE_UNSPECIFIED Not specified. This value is not used.
STOPPED Stopped.
LOADING Loading.
RUNNING Running.

EventInput

Events allow for matching intents by event name instead of the natural language input. For instance, input <event: { name: "welcome_event", parameters: { name: "Sam" } }> can trigger a personalized welcome response. The parameter name may be used by the agent in the response: "Hello #welcome_event.name! What can I do for you today?".

Fields
name

string

Required. The unique identifier of the event.

parameters

Struct

The collection of parameters associated with the event.

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: map
    • Else: string or number, depending on parameter value type
  • MapValue value:
    • If parameter's entity type is a composite entity: map from composite entity property names to property values
    • Else: parameter value
language_code

string

Required. The language of this query. 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.

ExportAgentRequest

The request message for Agents.ExportAgent.

Fields
parent

string

Required. The project that the agent to export is associated with. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>.

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

  • 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.

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 only if agent_uri is specified in ExportAgentRequest.

agent_content

bytes

Zip compressed raw byte content for agent.

Fulfillment

By default, your agent responds to a matched intent with a static response. As an alternative, you can provide a more dynamic response by using fulfillment. When you enable fulfillment for an intent, Dialogflow responds to that intent by calling a service that you define. For example, if an end-user wants to schedule a haircut on Friday, your service can check your database and respond to the end-user with availability information for Friday.

For more information, see the fulfillment guide.

Fields
name

string

Required. The unique identifier of the fulfillment. Supported formats: - projects/<Project ID>/agent/fulfillment - projects/<Project ID>/locations/<Location ID>/agent/fulfillment

display_name

string

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

enabled

bool

Whether fulfillment is enabled.

features[]

Feature

The field defines whether the fulfillment is enabled for certain features.

generic_web_service

GenericWebService

Configuration for a generic web service.

Feature

Whether fulfillment is enabled for the specific feature.

Fields
type

Type

The type of the feature that enabled for fulfillment.

Type

The type of the feature.

Enums
TYPE_UNSPECIFIED Feature type not specified.
SMALLTALK Fulfillment is enabled for SmallTalk.

GenericWebService

Represents configuration for a generic web service. Dialogflow supports two mechanisms for authentications: - Basic authentication with username and password. - Authentication with additional authentication headers. More information could be found at: https://cloud.google.com/dialogflow/docs/fulfillment-configure.

Fields
uri

string

Required. The fulfillment URI for receiving POST requests. It must use https protocol.

username

string

The user name for HTTP Basic authentication.

password

string

The password for HTTP Basic authentication.

request_headers

map<string, string>

The HTTP request headers to send together with fulfillment requests.

is_cloud_function

bool

Indicates if generic web service is created through Cloud Functions integration. Defaults to false.

GcsSource

Google Cloud Storage location for single input.

Fields
uri

string

Required. The Google Cloud Storage URIs for the inputs. A URI is of the form: gs://bucket/object-prefix-or-name Whether a prefix or name is used depends on the use case.

GetAgentRequest

The request message for Agents.GetAgent.

Fields
parent

string

Required. The project that the agent to fetch is associated with. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>.

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

  • dialogflow.agents.get

GetContextRequest

The request message for Contexts.GetContext.

Fields
name

string

Required. The name of the context. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>, - projects/<Project ID>/locations/<Location ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/contexts/<Context ID>,

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.contexts.get

GetDocumentRequest

Request message for Documents.GetDocument.

Fields
name

string

Required. The name of the document to retrieve. Format projects/<Project ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>.

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

  • dialogflow.documents.get

GetEntityTypeRequest

The request message for EntityTypes.GetEntityType.

Fields
name

string

Required. The name of the entity type. Supported formats: - projects/<Project ID>/agent/entityTypes/<Entity Type ID> - projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity Type ID>

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

  • dialogflow.entityTypes.get
language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

GetFulfillmentRequest

The request message for Fulfillments.GetFulfillment.

Fields
name

string

Required. The name of the fulfillment. Supported formats: - projects/<Project ID>/agent/fulfillment - projects/<Project ID>/locations/<Location ID>/agent/fulfillment

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

  • dialogflow.agents.get

GetIntentRequest

The request message for Intents.GetIntent.

Fields
name

string

Required. The name of the intent. Supported formats:

  • projects/<Project ID>/agent/intents/<Intent ID>
  • projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>

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

  • dialogflow.intents.get
language_code

string

Optional. The language used to access language-specific data. If not specified, the agent's default language is used. For more information, see Multilingual intent and entity data.

intent_view

IntentView

Optional. The resource view to apply to the returned intent.

GetKnowledgeBaseRequest

Request message for KnowledgeBases.GetKnowledgeBase.

Fields
name

string

Required. The name of the knowledge base to retrieve. Format projects/<Project ID>/knowledgeBases/<Knowledge Base ID>.

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

  • dialogflow.knowledgeBases.get

GetSessionEntityTypeRequest

The request message for SessionEntityTypes.GetSessionEntityType.

Fields
name

string

Required. The name of the session entity type. Supported formats: - projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name> - projects/<Project ID>/locations/<Location ID>/agent/environments/ <Environment ID>/users/<User ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>

If Location ID is not specified we assume default 'us' location. If Environment ID is not specified, we assume default 'draft' environment. If User ID is not specified, we assume default '-' user.

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

  • dialogflow.sessionEntityTypes.get

GetValidationResultRequest

The request message for Agents.GetValidationResult.

Fields
parent

string

Required. The project that the agent is associated with. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>.

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

  • dialogflow.agents.get
language_code

string

Optional. The language for which you want a validation result. 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.

ImportAgentRequest

The request message for Agents.ImportAgent.

Fields
parent

string

Required. The project that the agent to import is associated with. Format: projects/<Project ID> or projects/<Project ID>/locations/<Location ID>.

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

  • dialogflow.agents.import
Union field agent. Required. The agent to import. agent can be only one of the following:
agent_uri

string

The URI to a Google Cloud Storage file containing the agent to import. Note: The URI must start with "gs://".

agent_content

bytes

Zip compressed raw byte content for agent.

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

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

language_code

string

Required. The language of the supplied audio. Dialogflow does not do translations. 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.

enable_word_info

bool

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[]
(deprecated)

string

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.

This field is deprecated. Please use speech_contexts instead. If you specify both phrase_hints and speech_contexts, Dialogflow will treat the phrase_hints as a single additional SpeechContext.

speech_contexts[]

SpeechContext

Context information to assist speech recognition.

See the Cloud Speech documentation for more details.

model

string

Which Speech model to select for the given request. Select the model best suited to your domain to get best results. If a model is not explicitly specified, then we auto-select a model based on the parameters in the InputAudioConfig. If enhanced speech model is enabled for the agent and an enhanced version of the specified model for the language does not exist, then the speech is recognized using the standard version of the specified model. Refer to Cloud Speech API documentation for more details.

model_variant

SpeechModelVariant

Which variant of the Speech model to use.

single_utterance

bool

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. Note: When specified, InputAudioConfig.single_utterance takes precedence over StreamingDetectIntentRequest.single_utterance.

Intent

An intent categorizes an end-user's intention for one conversation turn. For each agent, you define many intents, where your combined intents can handle a complete conversation. When an end-user writes or says something, referred to as an end-user expression or end-user input, Dialogflow matches the end-user input to the best intent in your agent. Matching an intent is also known as intent classification.

For more information, see the intent guide.

Fields
name

string

Optional. The unique identifier of this intent. Required for Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Supported formats:

  • projects/<Project ID>/agent/intents/<Intent ID>
  • projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>
display_name

string

Required. The name of this intent.

webhook_state

WebhookState

Optional. Indicates whether webhooks are enabled for the intent.

priority

int32

Optional. 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

Optional. Indicates whether this is a fallback intent.

ml_enabled
(deprecated)

bool

Optional. Indicates whether Machine Learning is enabled for the intent. Note: If ml_enabled setting is set to false, then this intent is not taken into account during inference in ML ONLY match mode. Also, auto-markup in the UI is turned off. DEPRECATED! Please use ml_disabled field instead. NOTE: If both ml_enabled and ml_disabled are either not set or false, then the default value is determined as follows:

  • Before April 15th, 2018 the default is: ml_enabled = false / ml_disabled = true.
  • After April 15th, 2018 the default is: ml_enabled = true / ml_disabled = false.
ml_disabled

bool

Optional. Indicates whether Machine Learning is disabled for the intent. Note: If ml_disabled setting is set to true, then this intent is not taken into account during inference in ML ONLY match mode. Also, auto-markup in the UI is turned off.

end_interaction

bool

Optional. Indicates that this intent ends an interaction. Some integrations (e.g., Actions on Google or Dialogflow phone gateway) use this information to close interaction with an end user. Default is false.

input_context_names[]

string

Optional. The list of context names required for this intent to be triggered. Formats:

  • projects/<Project ID>/agent/sessions/-/contexts/<Context ID>
  • projects/<Project ID>/locations/<Location ID>/agent/sessions/-/contexts/<Context ID>
events[]

string

Optional. The collection of event names that trigger the intent. If the collection of input contexts is not empty, all of the contexts must be present in the active user session for an event to trigger this intent. Event names are limited to 150 characters.

training_phrases[]

TrainingPhrase

Optional. The collection of examples that the agent is trained on.

action

string

Optional. The name of the action associated with the intent. Note: The action name must not contain whitespaces.

output_contexts[]

Context

Optional. The collection of contexts that are activated when the intent is matched. Context messages in this collection should not set the parameters field. Setting the lifespan_count to 0 will reset the context when the intent is matched. Format: projects/<Project ID>/agent/sessions/-/contexts/<Context ID>.

reset_contexts

bool

Optional. Indicates whether to delete all contexts in the current session when this intent is matched.

parameters[]

Parameter

Optional. The collection of parameters associated with the intent.

messages[]

Message

Optional. The collection of rich messages corresponding to the Response field in the Dialogflow console.

default_response_platforms[]

Platform

Optional. The list of platforms for which the first responses will be copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).

root_followup_intent_name

string

Output only. The unique identifier of the root intent in the chain of followup intents. It identifies the correct followup intents chain for this intent.

Format: projects/<Project ID>/agent/intents/<Intent ID>.

parent_followup_intent_name

string

Optional. The unique identifier of the parent intent in the chain of followup intents. You can set this field when creating an intent, for example with CreateIntent or BatchUpdateIntents, in order to make this intent a followup intent.

It identifies the parent followup intent. Format: projects/<Project ID>/agent/intents/<Intent ID>.

followup_intent_info[]

FollowupIntentInfo

Output only. Information about all followup intents that have this intent as a direct or indirect parent. We populate this field only in the output.

FollowupIntentInfo

Represents a single followup intent in the chain.

Fields
followup_intent_name

string

The unique identifier of the followup intent. Format: projects/<Project ID>/agent/intents/<Intent ID>.

parent_followup_intent_name

string

The unique identifier of the followup intent's parent. Format: projects/<Project ID>/agent/intents/<Intent ID>.

Message

Corresponds to the Response field in the Dialogflow console.

Fields
platform

Platform

Optional. The platform that this message is intended for.

Union field message. Required. The rich response message. message can be only one of the following:
text

Text

Returns a text response.

image

Image

Displays an image.

quick_replies

QuickReplies

Displays quick replies.

card

Card

Displays a card.

payload

Struct

A custom platform-specific response.

simple_responses

SimpleResponses

Returns a voice or text-only response for Actions on Google.

basic_card

BasicCard

Displays a basic card for Actions on Google.

suggestions

Suggestions

Displays suggestion chips for Actions on Google.

list_select

ListSelect

Displays a list card for Actions on Google.

carousel_select

CarouselSelect

Displays a carousel card for Actions on Google.

telephony_play_audio

TelephonyPlayAudio

Plays audio from a file in Telephony Gateway.

telephony_synthesize_speech

TelephonySynthesizeSpeech

Synthesizes speech in Telephony Gateway.

telephony_transfer_call

TelephonyTransferCall

Transfers the call in Telephony Gateway.

rbm_text

RbmText

Rich Business Messaging (RBM) text response.

RBM allows businesses to send enriched and branded versions of SMS. See https://jibe.google.com/business-messaging.

rbm_standalone_rich_card

RbmStandaloneCard

Standalone Rich Business Messaging (RBM) rich card response.

table_card

TableCard

Table card for Actions on Google.

media_content

MediaContent

The media content card for Actions on Google.

BasicCard

The basic card message. Useful for displaying information.

Fields
title

string

Optional. The title of the card.

subtitle

string

Optional. The subtitle of the card.

formatted_text

string

Required, unless image is present. The body text of the card.

image

Image

Optional. The image for the card.

buttons[]

Button

Optional. The collection of card buttons.

Button

The button object that appears at the bottom of a card.

Fields
title

string

Required. The title of the button.

open_uri_action

OpenUriAction

Required. Action to take when a user taps on the button.

OpenUriAction

Opens the given URI.

Fields
uri

string

Required. The HTTP or HTTPS scheme URI.

BrowseCarouselCard

Browse Carousel Card for Actions on Google. https://developers.google.com/actions/assistant/responses#browsing_carousel

Fields
items[]

BrowseCarouselCardItem

Required. List of items in the Browse Carousel Card. Minimum of two items, maximum of ten.

image_display_options

ImageDisplayOptions

Optional. Settings for displaying the image. Applies to every image in items.

BrowseCarouselCardItem

Browsing carousel tile

Fields
open_uri_action

OpenUrlAction

Required. Action to present to the user.

title

string

Required. Title of the carousel item. Maximum of two lines of text.

description

string

Optional. Description of the carousel item. Maximum of four lines of text.

image

Image

Optional. Hero image for the carousel item.

footer

string

Optional. Text that appears at the bottom of the Browse Carousel Card. Maximum of one line of text.

OpenUrlAction

Actions on Google action to open a given url.

Fields
url

string

Required. URL

url_type_hint

UrlTypeHint

Optional. Specifies the type of viewer that is used when opening the URL. Defaults to opening via web browser.

UrlTypeHint

Type of the URI.

Enums
URL_TYPE_HINT_UNSPECIFIED Unspecified
AMP_ACTION Url would be an amp action
AMP_CONTENT URL that points directly to AMP content, or to a canonical URL which refers to AMP content via .

ImageDisplayOptions

Image display options for Actions on Google. This should be used for when the image's aspect ratio does not match the image container's aspect ratio.

Enums
IMAGE_DISPLAY_OPTIONS_UNSPECIFIED Fill the gaps between the image and the image container with gray bars.
GRAY Fill the gaps between the image and the image container with gray bars.
WHITE Fill the gaps between the image and the image container with white bars.
CROPPED Image is scaled such that the image width and height match or exceed the container dimensions. This may crop the top and bottom of the image if the scaled image height is greater than the container height, or crop the left and right of the image if the scaled image width is greater than the container width. This is similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
BLURRED_BACKGROUND Pad the gaps between image and image frame with a blurred copy of the same image.

Card

The card response message.

Fields
title

string

Optional. The title of the card.

subtitle

string

Optional. The subtitle of the card.

image_uri

string

Optional. The public URI to an image file for the card.

buttons[]

Button

Optional. The collection of card buttons.

Button

Optional. Contains information about a button.

Fields
text

string

Optional. The text to show on the button.

postback

string

Optional. The text to send back to the Dialogflow API or a URI to open.

CarouselSelect

The card for presenting a carousel of options to select from.

Fields
items[]

Item

Required. Carousel items.

Item

An item in the carousel.

Fields
info

SelectItemInfo

Required. Additional info about the option item.

title

string

Required. Title of the carousel item.

description

string

Optional. The body text of the card.

image

Image

Optional. The image to display.

ColumnProperties

Column properties for TableCard.

Fields
header

string

Required. Column heading.

horizontal_alignment

HorizontalAlignment

Optional. Defines text alignment for all cells in this column.

HorizontalAlignment

Text alignments within a cell.

Enums
HORIZONTAL_ALIGNMENT_UNSPECIFIED Text is aligned to the leading edge of the column.
LEADING Text is aligned to the leading edge of the column.
CENTER Text is centered in the column.
TRAILING Text is aligned to the trailing edge of the column.

Image

The image response message.

Fields
image_uri

string

Optional. The public URI to an image file.

accessibility_text

string

A text description of the image to be used for accessibility, e.g., screen readers. Required if image_uri is set for CarouselSelect.

LinkOutSuggestion

The suggestion chip message that allows the user to jump out to the app or website associated with this agent.

Fields
destination_name

string

Required. The name of the app or site this chip is linking to.

uri

string

Required. The URI of the app or site to open when the user taps the suggestion chip.

ListSelect

The card for presenting a list of options to select from.

Fields
title

string

Optional. The overall title of the list.

items[]

Item

Required. List items.

subtitle

string

Optional. Subtitle of the list.

Item

An item in the list.

Fields
info

SelectItemInfo

Required. Additional information about this option.

title

string

Required. The title of the list item.

description

string

Optional. The main text describing the item.

image

Image

Optional. The image to display.

MediaContent

The media content card for Actions on Google.

Fields
media_type

ResponseMediaType

Optional. What type of media is the content (ie "audio").

media_objects[]

ResponseMediaObject

Required. List of media objects.

ResponseMediaObject

Response media object for media content card.

Fields
name

string

Required. Name of media card.

description

string

Optional. Description of media card.

content_url

string

Required. Url where the media is stored.

Union field image. Image to show with the media card. image can be only one of the following:
large_image

Image

Optional. Image to display above media content.

icon

Image

Optional. Icon to display above media content.

ResponseMediaType

Format of response media type.

Enums
RESPONSE_MEDIA_TYPE_UNSPECIFIED Unspecified.
AUDIO Response media type is audio.

Platform

Represents different platforms that a rich message can be intended for.

Enums
PLATFORM_UNSPECIFIED Not specified.
FACEBOOK Facebook.
SLACK Slack.
TELEGRAM Telegram.
KIK Kik.
SKYPE Skype.
LINE Line.