Skip to main content

Configuring G Suite Integration

info

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_email value from your Google Cloud Platform (GCP) service account configuration file.

Service Account Client Id

The client_id value 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_key value from your Google Cloud Platform (GCP) service account configuration file.

Service Account Private Key Id

The private_key_id value from your Google Cloud Platform (GCP) service account configuration file.

Service Account Project Id

The project_id value 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 Id
  • private_key_id -> Service Account Private Key Id
  • private_key -> Service Account Private Key
  • client_email -> Service Account Client Email
  • client_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.