Control API access with domain-wide delegation

As an administrator, you can use domain-wide delegation of authority to grant third-party and internal applications access to your users' data.

App developers and administrators can create service accounts with OAuth 2.0. Then, you authorize the service accounts to access your users' data without requiring each user to give consent. Typical apps granted domain-wide delegation:

  • Google Workspace migration and sync tools

  • Internal apps (for example, automation apps) that developers create for your organization. For example, you can delegate access to an application that uses the Calendar API to add events to your users' calendars.

  • Three-legged OAuth apps, which normally require individual user consent. Users activate apps without being prompted for consent, and you can specify the user data that the apps can access.

To delegate access in the Google Admin console, you add the client ID of the service account or OAuth2 client ID of the app, and then grant access to supported Google APIs (scopes).

About domain-wide delegation

Domain-wide delegation is a powerful feature that allows apps to access users' data across your organization's Google Workspace environment. For example, grant domain-wide delegation to a migration app that duplicates user content from another service to Google Workspace. For this reason, only super admins can manage domain-wide delegation, and they must specify each API scope that the app can access.

You can also manage domain-wide installation and view API scopes for Google Workspace Marketplace apps. Learn about Marketplace apps data access and installation.

Open all   |   Close all

Before you begin
  • You need super admin privileges for your Google Workspace account.

  • To add or edit an app, get the following information from the app developer:
  • The client ID of the service account.
  • The list of API scopes requested by the app. Check that the app has an appropriately small scope of access.
  • With domain-wide delegation, the app has access to the data belonging to all of your users. We recommend setting up a regular review of service accounts and deleting any accounts no longer in use.
Set up domain-wide delegation for a client
  1. Sign in to your Google Admin console.

    Sign in using an account with super administrator privileges (does not end in @gmail.com).

  2. In the Admin console, go to Menu and then Securityand thenAccess and data controland thenAPI controlsand thenManage Domain Wide Delegation.
    You must be signed in as a super administrator for this task.
  3. Click Add new and enter your service account client ID.

    You can find the ID (also known as the Unique ID) in the JSON file that you downloaded when you created the service account or in Google Cloud (click IAM & Adminand thenService accountsand thenthe name of your service account).

  4. Enter the client ID of the service account or OAuth2 client ID of the app. (Typically, the ID is provided by the developer. If you're the owner of the service account, you can look up the ID.)

  5. In OAuth Scopes, add each scope that the application can access (should be appropriately narrow). You can use any of the OAuth 2.0 Scopes for Google APIs. For example, if the application needs domain-wide access to the Google Drive API and the Google Calendar API, enter https://www.googleapis.com/auth/drive and https://www.googleapis.com/auth/calendar.
  6. Click Authorize. If you get an error, the client ID might not be registered with Google or there might be duplicate or unsupported scopes.
  7. Point to the new client ID, click View details, and make sure that every scope is listed.

    If a scope is not listed, click Edit, enter the missing scope, and click Authorize. You can't edit the client ID.

Changes can take up to 24 hours but typically happen more quickly. Learn more

View, edit, or delete clients and scopes

As a best practice, periodically check your app's scopes and remove scopes that aren't required or actively used. Also, delete clients you no longer need. For example, remove access for a migration tool after you complete your migration.

  1. Sign in to your Google Admin console.

    Sign in using an account with super administrator privileges (does not end in @gmail.com).

  2. In the Admin console, go to Menu and then Securityand thenAccess and data controland thenAPI controlsand thenManage Domain Wide Delegation.
    You must be signed in as a super administrator for this task.
  3. Click a client name and then choose an option:
  • View details—View the full client name and list of scopes

  • Edit—Add or remove scopes. You can't edit the client ID. Changes can take up to 24 hours but typically happen more quickly. Learn more

  • Delete—Applications that depend on the client authorization will immediately stop working.

Was this helpful?

How can we improve it?
Search
Clear search
Close search
Google apps
Main menu
18201790308344288104
true
Search Help Center
true
true
true
true
true
73010
false
false