How can we help?

Calendar Integration Setup Guide (for Google)

Leo C
Leo C
  • Updated

This guide will walk you through setting up a Google Cloud service account, enabling domain-wide delegation, generating a JSON key file, and uploading this key file to integrations to enable Google Calendar support.

 

Setup Instructions

Step 1: Service Account Setup

  1. Visit the Google Cloud Console (console.cloud.google.com) and navigate to your default project (This should be a project that you’re currently using for your organization). If you don’t have a default project, then provision a new project ‘10KC | Tenant Calendar Integration’.

  2. Navigate to “IAM & Admin” > “Service Accounts” from the navigation menu at the left-hand side of the page.

  3. Click “Create Service Account” at the top of the page and fill in the required information. When creating the service account, you can leave the role blank.

  4. Find the new service account in the list of service accounts and click on its name.

  5. Under the “Keys” section, click “ADD KEY”, then select “JSON”

  6. Click “CREATE”. A JSON key file will be downloaded to your computer.

Step 2: Google Workspace Setup

  1. Login to your Google Workspace admin console.

  2. Navigate to “Security” > “API controls”

  3. In the “Domain wide delegation” pane, click “MANAGE DOMAIN WIDE DELEGATION”

  4. Click “Add new”, then in the “Client ID” field, enter the client ID of the service account.

  5. In the “OAuth Scopes” field, enter “https://www.googleapis.com/auth/calendar” without quotation marks.

  6. Click “AUTHORIZE”.

Step 3: Tenant Setup

  1. Login as a Tenant Admin to your 10KC tenant. If you don't have tenant admin access, send an email to integrations@tenthousandcoffees.com to request tenant admin access.

  2. Click on “Integrations” under Admin settings. Select Google under Calendar provider, enter the GCP JSON Key (generated in the steps above) and click on Save.

  3. Wait for the connection to be verified, once the connection is verified, the calendar integration will be enabled.

Installation and Usage Data Flow Diagram

 

Security Considerations

Calendar Access

10KC’s calendar integration will only work for employees who use the 10KC application and explicitly grant access to their calendars. This integration will not impact any employee who is not a 10KC user.

Data Usage

  • For viewing available times, 10KC uses Google’s freeBusy API which doesn't expose any calendar event data other than when people are free.
  • For creating events, 10KC uses Google’s insert event API which creates calendar events where data is stored in Google Calendar.
  • For reading events, 10KC used Google’s get event API but only for events created by the 10KC application. Moreover, response data from this endpoint does not expose any confidential meeting details.
  • 10KC uses calendar permissions only to optimize the user experience of the members using the 10KC application. 10KC never uses this integration for purposes unrelated to booking meetings.

Security Measures

10KC has strict security policies and we follow all best practices like annual pen-testing, annual internal audit, third party SOC2 audit and aligning with regional data privacy requirements. We take credentials very seriously, only ever using them for signed-in members booking meetings with other members.

Related to

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.