Method: projects.agent.import

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 agent.train and wait for the operation it returns in order to train explicitly.

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

The operation only tracks when importing is complete, not when it is done training.

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

HTTP request

POST https://{endpoint}/v2beta1/{parent=projects/*}/agent:import

Where {endpoint} is one of the supported service endpoints.

The URLs use gRPC Transcoding syntax.

Path parameters



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

Request body

The request body contains data with the following structure:

JSON representation

  // Union field agent can be only one of the following:
  "agentUri": string,
  "agentContent": string
  // End of list of possible types for union field agent.
Union field agent. Required. The agent to import. agent can be only one of the following:


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

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


string (bytes format)

Zip compressed raw byte content for agent.

A base64-encoded string.

Response body

If successful, the response body contains an instance of Operation.

Authorization scopes

Requires one of the following OAuth scopes:


For more information, see the Authentication Overview.