Configuring G Suite Integration
Dispatch ships with several G Suite plugins (Docs, Groups, Drive, etc.,). This page documents the available configuration for these plugins and the permissions required to enable them.
Dispatch Configuration
The G Suite plugins are configured in the Dispatch Web UI under Settings -> Project -> Plugins. Add the desired plugin(s) using the NEW button and then edit their configuration by clicking on the three vertical dots.
Developer Key
This is used by the Google API Discovery Service and prevents rate limiting.
Service Account Client Email
The
client_emailvalue from your Google Cloud Platform (GCP) service account configuration file.
Service Account Client Id
The
client_idvalue from your Google Cloud Platform (GCP) service account configuration file.
Service Account Delegated Account
Account to delegate to from the Google Cloud Platform (GCP) service account. Outgoing emails and other artifacts will appear to be from this account.
Service Account Private Key
The
private_keyvalue from your Google Cloud Platform (GCP) service account configuration file.
Service Account Private Key Id
The
private_key_idvalue from your Google Cloud Platform (GCP) service account configuration file.
Service Account Project Id
The
project_idvalue from your Google Cloud Platform (GCP) service account configuration file.
Google Workspace Domain
Base domain for which this Google Cloud Platform (GCP) service account resides.
Default Event Duration (Minutes)
Default duration in minutes for conference events. Defaults to 1440 minutes (1 day).
G Suite Setup
To set up G Suite integration, you'll need to create some resources in Google Cloud Platform and then link them to your G Suite organization.
Enable Required APIs in Google Cloud Platform
Navigate to the Google Cloud Platform (GCP) console. You will want to create a new GCP Project for Dispatch's integration.
Create a new service account within the GCP project (APIs & Services > Credentials > Create Credentials > Service Account). You do not need to assign any Google Cloud permissions to this service account when prompted.
Once created, download the JSON based key. You'll use these values to configure Dispatch:
project_id-> Service Account Project Idprivate_key_id-> Service Account Private Key Idprivate_key-> Service Account Private Keyclient_email-> Service Account Client Emailclient_id-> Service Account Client Id
Then, create a Developer API key (APIs & Services > Credentials > Create Credentials > API Key), and set it as the Developer Key.
Enable the following APIs (APIs and Services > Library):
- Google Drive API
- Google Drive Activity API
- Google People API
- Google Docs API
- Google Calendar API
- Gmail API
- Admin SDK (necessary to create and manage groups)
Finally, create your OAuth application which is how G Suite will authorize the service account and API key (APIs & Services > OAuth Consent Screen). Specify the following scopes:
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/directory.readonly
https://www.googleapis.com/auth/drive.activity.readonly
https://mail.google.com/
https://www.googleapis.com/auth/admin.directory.group
https://www.googleapis.com/auth/apps.groups.settings
https://www.googleapis.com/auth/calendar
Note: If you will not use Google Meet for your conference, then you do not need the https://www.googleapis.com/auth/calendar scope.
Connecting Dispatch to G Suite
Navigate to the G Suite Admin Domain-wide Delegation page (Security > API Controls > Domain-wide Delegation) and add a new API client.
Enter the Client ID you used for Service Account Client Id, and then paste in a comma-separated list of the OAuth scopes above.