Dialogflow API

Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).

Service: dialogflow.googleapis.com

We recommend that you call this service using Google-provided client libraries. If your application needs to call this service using your own libraries, you should use the following information when making the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service may have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

  • https://dialogflow.googleapis.com

REST Resource: v3beta1.projects.locations.agents

Methods
create POST /v3beta1/{parent=projects/*/locations/*}/agents
Creates an agent in the specified location.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*}
Deletes the specified agent.
export POST /v3beta1/{name=projects/*/locations/*/agents/*}:export
Exports the specified agent to a ZIP file.
get GET /v3beta1/{name=projects/*/locations/*/agents/*}
Retrieves the specified agent.
list GET /v3beta1/{parent=projects/*/locations/*}/agents
Returns the list of all agents in the specified location.
patch PATCH /v3beta1/{agent.name=projects/*/locations/*/agents/*}
Updates the specified agent.
restore POST /v3beta1/{name=projects/*/locations/*/agents/*}:restore
Restores the specified agent from a ZIP file.

REST Resource: v3beta1.projects.locations.agents.entityTypes

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes
Creates an entity type in the specified agent.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}
Deletes the specified entity type.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}
Retrieves the specified entity type.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes
Returns the list of all entity types in the specified agent.
patch PATCH /v3beta1/{entityType.name=projects/*/locations/*/agents/*/entityTypes/*}
Updates the specified entity type.

REST Resource: v3beta1.projects.locations.agents.environments

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*}/environments
Creates an Environment in the specified Agent.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/environments/*}
Deletes the specified Environment.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/environments/*}
Retrieves the specified Environment.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*}/environments
Returns the list of all environments in the specified Agent.
lookupEnvironmentHistory GET /v3beta1/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory
Looks up the history of the specified Environment.
patch PATCH /v3beta1/{environment.name=projects/*/locations/*/agents/*/environments/*}
Updates the specified Environment.

REST Resource: v3beta1.projects.locations.agents.environments.sessions

Methods
detectIntent POST /v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:detectIntent
Processes a natural language query and returns structured, actionable data as a result.
fulfillIntent POST /v3beta1/{matchIntentRequest.session=projects/*/locations/*/agents/*/environments/*/sessions/*}:fulfillIntent
Fulfills a matched intent returned by MatchIntent.
matchIntent POST /v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:matchIntent
Returns preliminary intent match results, doesn't change the session status.

REST Resource: v3beta1.projects.locations.agents.environments.sessions.entityTypes

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes
Creates a session entity type.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}
Deletes the specified session entity type.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}
Retrieves the specified session entity type.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes
Returns the list of all session entity types in the specified session.
patch PATCH /v3beta1/{sessionEntityType.name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}
Updates the specified session entity type.

REST Resource: v3beta1.projects.locations.agents.flows

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*}/flows
Creates a flow in the specified agent.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/flows/*}
Deletes a specified flow.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/flows/*}
Retrieves the specified flow.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*}/flows
Returns the list of all flows in the specified agent.
patch PATCH /v3beta1/{flow.name=projects/*/locations/*/agents/*/flows/*}
Updates the specified flow.
train POST /v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:train
Trains the specified flow.

REST Resource: v3beta1.projects.locations.agents.flows.pages

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages
Creates a page in the specified flow.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}
Deletes the specified page.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}
Retrieves the specified page.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages
Returns the list of all pages in the specified flow.
patch PATCH /v3beta1/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}
Updates the specified page.

REST Resource: v3beta1.projects.locations.agents.flows.transitionRouteGroups

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups
Creates an TransitionRouteGroup in the specified flow.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}
Deletes the specified TransitionRouteGroup.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}
Retrieves the specified TransitionRouteGroup.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups
Returns the list of all transition route groups in the specified flow.
patch PATCH /v3beta1/{transitionRouteGroup.name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}
Updates the specified TransitionRouteGroup.

REST Resource: v3beta1.projects.locations.agents.flows.versions

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions
Creates a Version in the specified Flow.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}
Deletes the specified Version.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}
Retrieves the specified Version.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions
Returns the list of all versions in the specified Flow.
load POST /v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}:load
Loads a specified version to draft version.
patch PATCH /v3beta1/{version.name=projects/*/locations/*/agents/*/flows/*/versions/*}
Updates the specified Version.

REST Resource: v3beta1.projects.locations.agents.intents

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*}/intents
Creates an intent in the specified agent.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/intents/*}
Deletes the specified intent.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/intents/*}
Retrieves the specified intent.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*}/intents
Returns the list of all intents in the specified agent.
patch PATCH /v3beta1/{intent.name=projects/*/locations/*/agents/*/intents/*}
Updates the specified intent.

REST Resource: v3beta1.projects.locations.agents.sessions

Methods
detectIntent POST /v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:detectIntent
Processes a natural language query and returns structured, actionable data as a result.
fulfillIntent POST /v3beta1/{matchIntentRequest.session=projects/*/locations/*/agents/*/sessions/*}:fulfillIntent
Fulfills a matched intent returned by MatchIntent.
matchIntent POST /v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:matchIntent
Returns preliminary intent match results, doesn't change the session status.

REST Resource: v3beta1.projects.locations.agents.sessions.entityTypes

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes
Creates a session entity type.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}
Deletes the specified session entity type.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}
Retrieves the specified session entity type.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes
Returns the list of all session entity types in the specified session.
patch PATCH /v3beta1/{sessionEntityType.name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}
Updates the specified session entity type.

REST Resource: v3beta1.projects.locations.agents.webhooks

Methods
create POST /v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks
Creates a webhook in the specified agent.
delete DELETE /v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}
Deletes the specified webhook.
get GET /v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}
Retrieves the specified webhook.
list GET /v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks
Returns the list of all webhooks in the specified agent.
patch PATCH /v3beta1/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}
Updates the specified webhook.

REST Resource: v3beta1.projects.locations.operations

Methods
cancel POST /v3beta1/{name=projects/*/locations/*/operations/*}:cancel
Starts asynchronous cancellation on a long-running operation.
get GET /v3beta1/{name=projects/*/locations/*/operations/*}
Gets the latest state of a long-running operation.
list GET /v3beta1/{name=projects/*/locations/*}/operations
Lists operations that match the specified filter in the request.

REST Resource: v3beta1.projects.operations

Methods
cancel POST /v3beta1/{name=projects/*/operations/*}:cancel
Starts asynchronous cancellation on a long-running operation.
get GET /v3beta1/{name=projects/*/operations/*}
Gets the latest state of a long-running operation.
list GET /v3beta1/{name=projects/*}/operations
Lists operations that match the specified filter in the request.