Unify Integrations
Logo
Google Meet

Google Meet

Logo

7 mins READ

Google Meet is Google's video conferencing service for online meetings, with recordings, transcripts and real-time collaboration. The UnifyApps Google Meet connector uses the Google Meet REST API, the Google Workspace Events API, Google Calendar and Google Drive to schedule and update meetings, read meeting spaces, conference records, participants and transcripts, work with meeting files, manage event subscriptions and react to meeting events from workflows and agents.

This guide covers every authentication type available on the connection form, and the actions and triggers supported, along with the Google scope each one needs.

Authentication

Before you begin, you should have the following information:

  • Connection name: a descriptive name such as MyAppGoogleMeetIntegration, so the connection is easy to identify later.

  • Authentication type: select the type of authentication for connecting to your Google Meet account:

    1. OAuth

    2. OAuth with Client Credentials

    3. Service Account

The OAuth and OAuth with Client Credentials types have a Scopes field. By default it selects calendar.events, meetings.space.created, meetings.space.readonly, meetings.space.settings, userinfo.email and userinfo.profile. Add pubsub if you will use the On new event trigger. The Scopes list has no Google Drive scope, so the file actions work only with a Service Account connection. See the Scopes Required column in the tables below.

1. OAuth

Use this when you want to connect with your own Google account and do not need to create a Google Cloud app.

  1. Enter a Connection name.

  2. Select OAuth as the Authentication type.

  3. Keep the default Scopes, or select the scopes you need.

  4. Click Authorize. You are redirected to the Google sign-in page.

  5. Sign in with the Google account whose meetings the connection should use.

  6. Review the permissions on the consent screen and click Allow.

  7. You are redirected back to UnifyApps with a confirmation that the account is connected.

google-meet-screenshot-1.png
google-meet-screenshot-1.png

2. OAuth with Client Credentials

Use this when your organization wants the connection to use its own Google Cloud OAuth client, while actions still run as the Google user who signs in.

Step 1: Create an OAuth client in Google Cloud

  1. In the Google Cloud Console, select or create a project, and enable the Google Meet REST API under APIs & Services → Library. Also enable the Google Calendar API to schedule and list meetings, and the Google Workspace Events API and Cloud Pub/Sub API if you will use subscriptions or the trigger.

  2. Go to Google Auth platform → Branding. If you see Google Auth platform not configured yet, click Get Started, enter an App name, User support email, Audience and contact email, and click Create.

  3. Go to Data Access, click Add or Remove Scopes, select the Meet and Calendar scopes the connection will use, and click Save. If the audience is External, add the users who will sign in under Audience → Test users.

  4. Go to Google Auth platform → Clients and click Create Client. Choose Web application as the Application type and enter a name.

  5. Under Authorized redirect URIs, click Add URI and paste the Callback URL shown on the UnifyApps connection form (it is copyable and differs per environment).

  6. Click Create, then copy the Client ID and Client secret. Copy the secret immediately: Google shows it only once.

google-meet-screenshot-2-blurred.png
google-meet-screenshot-2-blurred.png

Step 2: Connection setup in UnifyApps

  1. Open Connections → New Connection → Google Meet and enter a Connection name.

  2. Select OAuth with Client Credentials as the Authentication type.

  3. Enter the Client ID and Client Secret copied from Google Cloud.

  4. Select the same Scopes you added to the consent screen.

  5. Click Authorize, sign in with Google and click Allow on the consent screen.

  6. Confirm the success message after the redirect back to UnifyApps.

3. Service Account

Use this for Google Workspace domains, where a service account acts on behalf of a user in the domain through domain-wide delegation. No user has to sign in.

Step 1: Create a service account in Google Cloud

  1. In the Google Cloud Console, select or create a project, and enable the Google Meet REST API under APIs & Services → Library. Also enable the Google Calendar API, Google Drive API, Google Workspace Events API and Cloud Pub/Sub API for the actions you will use.

  2. Go to IAM & Admin → Service Accounts and click Create service account. Enter a name and click Done.

  3. Open the service account and copy its Email. Click Show advanced settings and, under Domain-wide delegation, copy the Client ID used in the next step.

  4. Go to the Keys tab → Add key → Create new key, choose JSON and click Create. The downloaded file holds the client_email and private_key. Store it securely.

Step 2: Give the service account domain-wide access

  1. A Google Workspace super administrator opens the Admin console → Security → Access and data control → API controls.

  2. Click Manage Domain Wide Delegation → Add new.

  3. Enter the service account's client ID and add these five OAuth scopes, separated by commas, then click Authorize: https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/calendar, https://www.googleapis.com/auth/meetings.space.created, https://www.googleapis.com/auth/meetings.space.readonly and https://www.googleapis.com/auth/pubsub. See Delegate domain-wide authority to your service account for details.

Note: this authentication type has no Scopes field. The connection always requests the five scopes above, so all five must be authorized for domain-wide delegation, or Google refuses to issue a token. The connection can only act for users in the Workspace domain where delegation was granted. Google says changes can take up to 24 hours to apply.

google-meet-screenshot-3.png
google-meet-screenshot-3.png

Step 3: Create the connection in UnifyApps

  1. Select Service Account as the Authentication type.

  2. Enter the GCP Project Service Account Email and paste the Private Key from the JSON key file.

  3. Enter the User Email of the Workspace user the connection acts as.

  4. Click Test Connection to validate the credentials, then click Create.

Actions

Scopes are shown in short form: meetings.space.readonly means https://www.googleapis.com/auth/meetings.space.readonly. Any broader scope also works. meetings.space.created can be used instead of meetings.space.readonly, but it only reaches meeting spaces created by the app. The file actions need a Google Drive scope, which only the Service Account type requests (as drive).

Actions

Description

Scopes Required

Create pub/sub subscription

Creates a Google Workspace Events subscription that sends Google Meet events to a Pub/Sub topic.

meetings.space.readonly (or meetings.space.created)

Delete pub/sub subscription

Deletes a pub/sub subscription in Google Meet.

meetings.space.readonly (or meetings.space.created)

Export file

Exports a file in Google Meet in the format you choose.

drive.readonly (or drive); Service Account only

Get conference record

Gets a conference record by ID from Google Meet.

meetings.space.readonly (or meetings.space.created)

Get conference record participant

Gets a conference record participant from Google Meet.

meetings.space.readonly (or meetings.space.created)

Get conference record transcript

Gets a conference record transcript from Google Meet.

meetings.space.readonly (or meetings.space.created)

Get file

Gets the content of a file in Google Meet.

drive.readonly (or drive); Service Account only

Get file details

Gets the details of a file in Google Meet.

drive.metadata.readonly (or drive); Service Account only

Get meeting space by ID

Gets a meeting space by ID from Google Meet.

meetings.space.readonly (or meetings.space.created)

List conference record participants

Lists the participants of a conference record from Google Meet.

meetings.space.readonly (or meetings.space.created)

List conference record transcript entries

Lists the entries of a conference record transcript from Google Meet.

meetings.space.readonly (or meetings.space.created)

List conference record transcripts

Lists the transcripts of a conference record from Google Meet.

meetings.space.readonly (or meetings.space.created)

List conference records

Lists conference records from Google Meet.

meetings.space.readonly (or meetings.space.created)

List file permissions

Lists the permissions for a file in Google Meet.

drive.metadata.readonly (or drive); Service Account only

List meetings

Lists meetings in Google Meet.

calendar.events (or calendar)

List subscriptions

Lists the pub/sub subscriptions in Google Meet.

meetings.space.readonly (or meetings.space.created)

Schedule meeting

Schedules a meeting in Google Meet.

calendar.events (or calendar)

Update meeting

Updates a meeting in Google Meet.

calendar.events (or calendar)

Update pub/sub subscription

Updates a pub/sub subscription in Google Meet.

meetings.space.readonly (or meetings.space.created)

Triggers

The trigger creates a push subscription on a Pub/Sub topic you name (project ID, topic ID and subscription name). Google Meet events reach that topic through a subscription made with Create pub/sub subscription; the topic must give the Pub/Sub Publisher role to meet-api-event-push@system.gserviceaccount.com. The connected user needs pubsub.subscriptions.create on the project and pubsub.topics.attachSubscription on the topic, for example through the Pub/Sub Editor role.

Triggers

Description

Scopes Required

On new event

Triggers when an event happens in Google Meet.

pubsub