Sync stays off until you save a valid service-account JSON key and turn the integration On. Treat the JSON key like a password — anyone with it and domain-wide delegation can read your directory as the admin you choose.
What you need
- A Google Cloud project where you can create a service account and download a JSON key
- A Google Workspace Super Admin (to authorize domain-wide delegation)
- The Workspace domain you want to sync (for example
hilt.ai) - An admin email on that domain for the service account to impersonate
admin.directory.user.readonly). It does not read Gmail or modify Workspace settings.
Setup
1
Enable the Admin SDK in Google Cloud
Open the Google Cloud Console and pick or create a project. Go to APIs & Services → Library, search for Admin SDK API, and enable it. Without this API, Directory sync cannot run.
2
Create a service account and download a JSON key
Go to IAM & Admin → Service Accounts → Create service account. Name it something recognizable, for example
hilt-workspace-sync. You do not need to grant roles on the GCP project for Directory sync. Open the new service account → Keys → Add key → Create new key → JSON, then download the file. That file is what you paste into Hilt.3
Authorize domain-wide delegation in Google Workspace
In the service account details, copy the Client ID (numeric, not the email). Open the Google Admin Console as a Super Admin → Security → Access and data control → API controls → Manage Domain Wide Delegation → Add new. Paste the Client ID and authorize this OAuth scope on one line:
https://www.googleapis.com/auth/admin.directory.user.readonlyBoth the GCP steps and this Workspace authorization are required.4
Finish in Hilt
Open Settings → Integrations → Google Workspace. Enter your Workspace domain (for example
hilt.ai), an admin email the service account can impersonate (a real Workspace admin such as you@hilt.ai), and paste the full contents of the downloaded JSON key into Service account JSON. Click Save connection, then turn the integration On. Hilt syncs the directory and shows install coverage for those users.Security
Troubleshooting
Related
- Slack notifications → Slack
- Outbound webhooks → Webhooks
- Identity mapping (Okta) → Identity mappings
