Regionalization and data residency

Agent Assist provides data residency to keep your data-at-rest physically within a specified geographical region or location. When you specify a region, your data-at-rest is not stored outside that region. Pricing is the same for all regions.

Specifying a region is particularly helpful in the following use cases:

  • Your system has regulatory or policy requirements that govern where your data must reside.
  • Your network latencies might be improved when the data is in the same region as your customers. For example, if Belgium customers use europe-west1, they can expect better latency.

Available regions

Country grouping Geographical location Region ID
Americas Iowa us-central1
Americas South Carolina us-east1
Americas Oregon us-west1
Americas Montréal northamerica-northeast1
Europe Belgium europe-west1
Europe London europe-west2
Europe Frankfurt europe-west3
Asia Pacific Singapore asia-southeast1
Asia Pacific Tokyo asia-northeast1
Asia Pacific Mumbai asia-south1
Asia Pacific Sydney australia-southeast1
Global Global serving, data-at-rest in US global (preferred), us, or no region specified (default)

Available features for regional serving

Region ID Smart Reply Article Suggestion Summarization v1 custom model (preview) Summarization v2 custom model (preview) Summarization baseline model Sentiment Analysis
us-central1
us-east1
us-west1
northamerica-northeast1
europe-west1
europe-west2
europe-west3
asia-southeast1
asia-northeast1
asia-south1
australia-southeast1
global

Data-at-rest

All Agent Assist developer user and end-user data is included in data-at-rest. For example:

Limitations

The following limitations apply:

  • The Agent Assist Console does not yet support regionalization. You can only implement regionalization by calling the API directly.
  • Model training does not support regionalization. Your data may get routed outside the region during this process.
  • Only HTML format is supported for Article Suggestion documents when you use regional endpoints.
  • API Explorer, found on many REST reference documents, only supports the global region for API calls.

  • CCAI Transcription currently only supports multi-region data in use and data at rest (if not using the Speech Adaptation feature) in EU, US, North America (Canada).

Specify a region using the API

To use regionalization you must specify a region for every API request.

Required fields:

  • Provide the region ID for the location URL path parameter.
  • Use region_id-dialogflow.googleapis.com for the hostname.

Example, using the us-central1 region:

    us-central1-dialogflow.googleapis.com/v2/projects/project_id/locations/us-central1/knowledgeBases/knowledge_base_id

To use client libraries, the following steps are required:

  • Set the service endpoint to: REGION_ID-dialogflow.googleapis.com.
  • Set the resource name with the correct location, for example:

    projects/project_id/locations/region_id/knowledgeBases/knowledge_base_id
    

Credentials

We recommend that you use the GOOGLE_APPLICATION_CREDENTIALS environment variable to provide your client libraries with credentials. See the Dialogflow setup instructions for more information about setting this variable.

If you instead need to provide manual credentials in your code, one additional step is required before you can call a regionalized endpoint. You must set the scope to https://www.googleapis.com/auth/cloud-platform when you generate your authentication credentials. The following example demonstrates how to do this in Java when creating a GoogleCredentials object:

    GoogleCredentials.fromStream(new FileInputStream("credential_file"))
      .createScoped("https://www.googleapis.com/auth/cloud-platform")

Cloud logging

See the Cloud logging documentation to control the region where your logs are stored.