Skip to content
Last updated

Google Workspace integration

Integrating Google Workspace with Frontegg lets your application manage users, groups, organizational units, roles, and custom user schemas in a Google Workspace domain through the Admin SDK Directory API — all via Frontegg's integration layer using Google OAuth 2.0.


Prerequisites

  • A Google Workspace account with super admin privileges (the Admin SDK Directory API requires admin authorization at runtime)
  • Access to Google Cloud Console with permission to create OAuth clients
  • A Google Cloud project (you can create one during setup)

Enable the Admin SDK API

Step 1: Open the Admin SDK API in the API library

Go to the Admin SDK API page in the Google Cloud Console. Select your project from the top navigation, then click Enable if the API is not yet enabled. If you see Manage and API Enabled, the API is already active.

Admin SDK API page in Google Cloud Console

Create an OAuth client

Step 2: Go to the Credentials page

In the left sidebar, navigate to APIs & ServicesCredentials. Click Create credentials.

Credentials page with Create credentials button highlighted

Step 3: Select OAuth client ID

From the dropdown, select OAuth client ID.

Create credentials dropdown with OAuth client ID highlighted

Step 4: Configure the OAuth client

On the Create OAuth client ID page:

  1. Set Application type to Web application.
  2. Enter a name for the client (for example, Frontegg Integration).
  3. Under Authorized redirect URIs, click Add URI and add your Frontegg Redirect URL:
    • https://YOUR_MCP_GATEWAY_URL/integration-callback

OAuth client form with name and redirect URI filled in

Step 5: Create the client

Click Create to save the OAuth client. A dialog will display your Client ID and Client Secret — copy both values and store them securely.

Save your Client Secret now

The Client Secret is only shown once in this dialog. After you close it, you cannot retrieve it again — you can only create a new secret.

OAuth client created dialog showing Client ID and blurred Client Secret

Copy your credentials

Step 6: Locate the new client in the credentials list

After closing the dialog, your new client appears in the OAuth 2.0 Client IDs list on the Credentials page.

Credentials page showing the new Frontegg Integration client

Step 7: View the Client ID in the client detail page

Click the client name to open its detail page. You can view and copy the Client ID at any time from the Additional information section.

OAuth client detail page showing Client ID

Configure the Frontegg portal

Once you have your Client ID and Client Secret, enter them in the Frontegg portal:

  1. Open the Frontegg portal and navigate to [ENVIRONMENT] → Integrations → Google Workspace.
  2. Enter the Client ID and Client Secret in the corresponding fields.
  3. Optionally, enter your Customer ID to scope all calls to a specific Google Workspace customer. Leave it empty to use the authenticated admin's domain (recommended). You can find your Customer ID in the Google Admin Console under AccountAccount settingsCustomer ID (for example, C03az79cb).
  4. Select the required scopes:
ScopeDescription
https://www.googleapis.com/auth/admin.directory.userRead, create, update, and delete users in the directory
https://www.googleapis.com/auth/admin.directory.user.readonlyRead-only access to users in the directory
https://www.googleapis.com/auth/admin.directory.user.securityManage user security settings (sign-in cookies, application-specific passwords)
https://www.googleapis.com/auth/admin.directory.groupRead, create, update, and delete groups in the directory
https://www.googleapis.com/auth/admin.directory.group.readonlyRead-only access to groups in the directory
https://www.googleapis.com/auth/admin.directory.group.memberManage group memberships
https://www.googleapis.com/auth/admin.directory.group.member.readonlyRead-only access to group memberships
https://www.googleapis.com/auth/admin.directory.orgunitManage organizational units
https://www.googleapis.com/auth/admin.directory.orgunit.readonlyRead-only access to organizational units
https://www.googleapis.com/auth/admin.directory.rolemanagementManage admin roles and role assignments
https://www.googleapis.com/auth/admin.directory.rolemanagement.readonlyRead-only access to admin roles and role assignments
https://www.googleapis.com/auth/admin.directory.userschemaManage custom user schemas
https://www.googleapis.com/auth/admin.directory.userschema.readonlyRead-only access to custom user schemas
  1. Click Save.

Keep your credentials secure

Never share or commit your Client Secret to version control.

Additional resources