What’s Supported
Supported Actions
This connector supports:- Proxy Actions, using the base URL
https://www.googleapis.com.
- Read Actions, including historical backfill. Incremental read is only supported for the Calendar
Eventsobject; otherwise, a full read of the Google instance will be performed for each scheduled run. - Write Actions.
Important Note on Events Backfill: The events object has a 28-day cap for historic backfill and does not support full history, due to limitations in the Google API. When syncing events data, ensure your backfill period does not exceed 28 days.
The Gmail module supports:
- Read Actions, including historical backfill. Incremental read and pagination are only supported for
Drafts,Messages, andThreadsobjects; otherwise, a full read of the Gmail instance will be performed for each scheduled run. - Write Actions.
Supported modules & objects
The supported modules and objects are the same as the standard Google connector. See that guide for the full list of Calendar and Gmail objects.Before you get started
This connector uses a GCP service account with domain-wide delegation. There is no interactive login - your customer’s Google Workspace administrator will pre-authorize your service account’s client ID with the required API scopes, and Ampersand will sign JWT assertions impersonating each user to obtain access tokens.Creating an installation per user
Each connection on Ampersand represents one user’s access. Because domain-wide delegation can impersonate any user in the domain, you create one connection per Workspace user you want to sync — each connection shares the same service account key but carries a different user email.1. Collect information from your customer
Share the Google Workspace Delegation customer guide with your customer’s Google Workspace Admin. Then collect the following information from them either manually or via a UI in your application:- Base64 encoded service account key
- List of email addresses of users whose data this integration should have access to
- Scopes that they authorized
The scopes must be a subset of what the Google Workspace admin authorized in the Admin console (Security > API controls > Domain-wide delegation). Google’s JWT bearer flow requires scopes to be declared in every token request and will reject the exchange if any requested scope is not authorized. The same also applies to the user’s email - it is required when impersonating a user.
2. Bulk create connections and integrations
For each user whose data this integration needs to access, call the Generate Connection endpoint and Create Installation endpoint. When using these endpoints, use the following values:groupRef: this should be the same for all the users within a Google Workspace, this can be an org ID or team ID used by your application.consumerRef: this should be different for each user, this can be a user ID from your application or any other unique ID.
user@example.com:
id field — that value is the Connection ID.
Using the connector
To start integrating with Google (Workspace Delegation):- Create a manifest file like the Google Calendar example, using
googleWorkspaceDelegationas the provider instead ofgoogle. - Deploy it using the amp CLI.
- If you are using Read Actions, create a destination.
- Collect your customer’s service account key, then create one connection per Workspace user (service account key + user email + scopes).
- Start using the connector!
- If your integration has Read Actions, you’ll start getting webhook messages.
- If your integration has Write Actions, you can start making API calls to our Write API.
- If your integration has Proxy Actions, you can start making Proxy API calls.

