How to connect the Zoom API to Google Sheets

Zoom is a cloud-based video conferencing service you can use to virtually meet with others, either by video, audio, or both. We can use the Zoom API to import data from Zoom into Google Sheets. In this tutorial, we’ll show you how to connect the Zoom API to Google Sheets in 6 steps:

  1. Install the Apipheny add-on
  2. Create an OAuth app
  3. Obtain an access token
  4. Choose a Zoom API Endpoint URL
  5. Enter the Zoom API Request into the Apipheny add-on
  6. Run the Zoom API Request in your Google Sheets

Step 1.) Install and open the Apipheny add-on for Google Sheets

Apipheny is an API connector for Google Sheets. You can use Apipheny to connect your Google Sheets to unlimited API data sources, make unlimited API requests, and more. There is a 30 day free trial included.

1.) Install Apipheny by opening the following link on desktop and then clicking the Install button in the Google Marketplace: https://apipheny.io/install

2.) After you’ve installed Apipheny, open a Google Sheet and then click on the Extensions dropdown in the menu at the top.

In the dropdown list you should see Apipheny. Click Apipheny then click Import API to open the Apipheny sidebar in your Google Sheet.

open apipheny

Tip: you can open a new Google Sheet by entering this URL in your browser: sheet.new

Step 2.) Create an OAuth app

After logging into your Zoom account, go to https://marketplace.zoom.us/ and click the Develop menu, then click Build App:

Zoom account dashboard
Zoom account dashboard

In the card corresponding to the OAuth app type, click the Create button:

Application types page
Application types page

Complete the App Name field, choose the Account-level app type, and then click the Create button:

Create an OAuth app section

Complete the Redirect URL for OAuth field, then click the Continue button:

App Credentials section

Complete the Basic Information section for your app, then click the Continue button:

Basic information page
Basic information page

Complete the OAuth allow list section information and then click the Continue button:

OAuth allow list
OAuth allow list

Complete all the fields in the Information section, then click the Continue button:

Choose any features you need for the app and then click the Continue button:

App's features page
App’s features page

In the Scopes section, choose any scopes you need for the app by clicking the +Add Scopes button:

App's scopes page
App’s scopes page

After you have added the scopes you need, click the Done button:

Finish adding scopes
Finish adding scopes

You’re finished with this step, you can now move on to Step 3.

Step 3.) Obtain an access token

In the Local Test section, click the Add button, then Continue:

Local Test section
Note: In case you get an error that says you don't have the required permissions to install the app, enable developer privileges for your role. You need to be an admin to do that. Go to User Management > Roles > roles settings > Advance features> and enabling Zoom For Developers.

On the next screen, click the Authorize button:

The Authorize window

The browser will now navigate to the redirect URL that you provided earlier. One query parameter (code) will be added to your browser’s address bar, at the end of this redirect URL. The code parameter is a single use login code that we will now use to acquire a refreshable access token:

Redirect URL page
Redirect URL page

Next, open up a command prompt window for Windows OS or a terminal for Mac OS and compose the following curl command:

curl -X POST https://zoom.us/oauth/token -H "Authorization: Basic encoded_string" -H "Content-Type: application/x-www-form-urlencoded" -d "grant_type=authorization_code&code=your_code&redirect_uri=redirect_URL"

You’ll need to fill in a few parts:

  • encoded_string – This is a value obtained by base64-encoding a string consisting of the client ID and the client secret you generated previously, in Step 2, in the App Credentials section, separated by a colon (“:”). So you would base64 encode ClientID:ClientSecret
  • your_code – This should be the value of the code query parameter from the previous step.
  • redirect_URL – This must be the redirect URL that you entered while creating your OAuth app
Note: For Mac OS you may need to use single quotes ( ' ) instead of double quotes ( " ).
Console window for refreshable token
Console window for refreshable token

The response access_token may be used in order to access the Zoom API for up to one hour. The refresh_token may be used to get a new access token when that hour is up. Refreshing the access token can be done with the following command:

curl -X POST https://zoom.us/oauth/token -H "Authorization: Basic encoded_string" -H "Content-Type: application/x-www-form-urlencoded" -d "refresh_token=your_refresh_token&grant_type=refresh_token&redirect_uri=redirect_URL"

You’ll need to fill in a few parts here as well:

  • encoded_string – This is a value obtained by base64-encoding a string consisting of the client ID and the client secret you generated previously, in Step 2, in the App Credentials section, separated by a colon (“:”)
  • redirect_URL – This must be the redirect URL that you entered while creating your developer application
  • your_refresh_token – Should be replaced with the value of the refresh_token field from the previous command’s response
Note: If the token/key that you generate has an expiration time, you will need to complete this same process again to get a new token when the old one expires.

Step 4.) Choose a Zoom API Endpoint URL

In this section, we’ll show you how to browse the Zoom API documentation to find an API URL and endpoint that retrieves the specific information you need from your Zoom account. If you already know your whole API URL, or you want to use the same example URL as us, just skip to Step 5.

First, open the Zoom API documentation page: https://marketplace.zoom.us/docs/api-reference/zoom-api

The menu on the left contains general information about the Zoom API and its endpoints:

Zoom API documentation page

If we click the Methods menu item, a list of grouped endpoints will be displayed:

An example endpoint group is Roles. This endpoint group contains 8 endpoints.

In this case, we will describe the List roles endpoint, which lists roles on your account.:

https://api.zoom.us/v2/roles

The documentation for this endpoint contains its HTTP method and URL path, a short description of the endpoint’s purpose, the necessary scopes, the query parameters, the authorizations used by the endpoint, and the responses it can return:

Accounts endpoint documentation page

If you want some specific data from your Zoom account, look through the documentation to determine if an endpoint exists for that data.

All API calls to the Zoom API should be made using the https://api.zoom.us/v2/ base domain. All endpoints and parameters would be appended to this base domain.

If you have a master account then the URL changes.

Master API endpoints are prepended with /accounts/{accountID}. The request body and responses mirror the standard Zoom APIs.

For example, a regular Zoom account would use to list all of its users. However, to list all of a subaccount’s users, a Master account would use the GET /accounts/{accountId}/users endpoint.

The base URL for master accounts is:

 https://api.zoom.us/v2/accounts/{accountId}/

To use the Master API endpoints, the Master account must authenticate via a associated with the Master account or an associated with a specific user under the Master account.

The Master account (on both levels) must have the Manage the subaccount role enabled to use the Master account APIs and manage subaccount information.

Step 5.) Enter the Zoom API Request into the Apipheny add-on

Okay, now we’re in the home stretch. Go back to your Google Sheet and make sure that the Apipheny add-on is open on the “Import” tab. With the Import Tab open, enter these details into the add-on:

Method: At the top of the Apipheny sidebar, select the HTTP method (GET or POST) as required by your Zoom API endpoint. For this example, we are using the GET method.

API URL: In Step 4, we explained how you can find the Zoom API endpoint that you need. Now copy the complete API URL into the Apipheny add-on, where it says API URL Path, followed by any GET parameters required for your query.

For this example, we are using the Users endpoint, which lists users on your account. The corresponding URL for this endpoint is:

https://api.zoom.us/v2/users

Headers: In the Headers of the Apipheny add-on section, add one row with the following key and value:

Header
Key:
Authorization
Value:
Bearer your_token
  • your_token is the value of the token you obtained previously, in Step 3. There should be a literal space between Bearer and your_token.
Zoom API request entered into Apipheny
Zoom API request entered into Apipheny

Step 6.) Run the Zoom API Request in your Google Sheets

The last step is to click the Run button at the bottom of the Apipheny add-on and then your Zoom data will be imported into your Google Sheet.

Zoom data imported into Google Sheets
Zoom data imported into Google Sheets

After making a successful request to the Zoom API, try querying a different Zoom API endpoint, or try using one of the more advanced features in the Apipheny add-on.


Crypto API tutorials and more:


API Tutorials



API Knowledge

What is an API?

What is an API URL?

What are parameters?

What is an endpoint?

What is an API key/token?

What is basic authentication?

What are headers?

What is a GET request?

What is a POST request?


Sponsored by Zink Virtual Tip Jar & Rewording.io Paraphrasing Tool

Accept donations on Twitch | Accept donations on Discord | Accept donations on YouTube | Accept donations on Telegram | Accept donations on Twitter | Accept donations on TikTok | Accept donations on Instagram | Accept donations on LinkedIn | Accept donations on Facebook | Accept donations on your Website