Agents are best described as NLU (Natural Language Understanding) modules. These can be included in your app, product, or service and transform natural user requests into actionable data.

This transformation occurs when a user input matches one of the intents inside your agent. Intents are the predefined or developer-defined components of agents that process a user’s request.

Agents can also be designed to manage a conversation flow in a specific way. This can be done with the help of contexts, intent priorities, slot filling, responsibilities, and fulfillment via webhook.


To create an agent, click on Create Agent in the left menu.

Choose a unique name for your agent and set the relevant settings.

  • Default Language - Select the default language for your agent.
  • Default Time Zone - Select the default time zone for your agent.
  • Google Project - Choose an existing Google Cloud Project or leave on "Create a new Google project" to do so.
  • API Version - Enable this option to use the beta V2 API.


You can access the settings for the agent by clicking the gear icon settings next to the agent name.


  • Description & Update Avatar - These will only be displayed in the Web Demo for your agent.
  • Language - The default language for your agent.
  • Default Time Zone - Select the default time zone for your agent. This timezone will be used if you don't pass the timezone parameter in query requests.
  • Google Project - The Google Cloud Project linked to the agent. This project is created and linked by default.
  • Client Access Token - For end-user interaction with /query, /context and /userEntites endpoints only.
  • Developer Access Token - Used for agent modification. Do not share.
  • Log Settings - This option disables logging. Read more in Training.
  • Delete Agent - Completely deletes agent (cannot be undone).


Add multiple languages and their respective locales to make your agent multilingual.

Choose a language from the list and click the Save button. To add a locale, if available, hover over the listed language and click + Add locale.

More on Multi-language Agent Support.

ML Settings (Machine Learning)

  • Match Mode - This setting defines what algorithm should be used for machine learning. The setting applies to all the intents in which Machine Learning is enabled.

    • Hybrid - This mode fits best for agents with a small number of examples in intents and/or wide use of composite entities.
    • ML Only - This mode can be used for agents with a large number of examples in intents, especially the ones using the system entity @sys.any.
  • ML Classification Threshold - Defines a threshold value between 0 and 1 for triggering fallback intents and returns the "score" in the JSON response to the query. If no fallback intents are provided, no intent will be triggered.

  • Automatic Spell Correction - When enabled, this allows a misspelled input from a user to be accepted for matching.

Export and Import

  • Export as ZIP - Exports agent as .ZIP file (JSON includes these fields).
  • Restore from ZIP - Replaces the current agent with the supplied .ZIP file.
  • Import from ZIP - Upload intents and entities from an existing exported agent.

Below is an example of the files and structure of an exported agent:


This page is used to share access to the agent with other Dialogflow users.

Enter the email address of the other user you want to share the agent with, choose one of the following roles for that user, click Add, and then click the Save button:

  • Developer - Ability to edit intents, entities, fulfillment, integrations and training for the agent. This is ideal for team members like developers and linguists.
  • Reviewer - Read-only access to intents and entities. This is ideal for project managers, legal and anyone who just needs to review content.

See Sharing for more information.