---
title: "Example: OAuth Configuration for Zoom"
slug: "example-oauth-configuration-for-zoom"
updated: 2026-05-29T16:54:08Z
published: 2026-05-29T16:54:08Z
canonical: "docs.algosolutions.com/example-oauth-configuration-for-zoom"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.algosolutions.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Example: OAuth Configuration for Zoom

This guide explains how to:

- Integrate an Algo device with Zoom using OAuth
- Verify the configuration by creating a test Zoom meeting
- Use the OAuth profile to create a test Zoom meeting from an Algo 8450

> [!NOTE]
> Note
> 
> This document includes third-party configuration procedures that are subject to change. It is provided for reference purposes only, and Algo cannot guarantee that the screenshots or procedures will always be current or up to date.

### **Before you start**

Ensure you have a Zoom account.

### Procedure Overview

This procedure includes the following steps:

1. [Creating a Zoom Application](/docs/example-oauth-configuration-for-zoom#creating-a-zoom-application)
2. [Creating an OAuth Authorization Profile](/docs/example-oauth-configuration-for-zoom#creating-an-oauth-authorization-profile)
3. [Creating a Test Meeting](/docs/example-oauth-configuration-for-zoom#creating-a-test-meeting)
4. (Optional): [Configuring an 8450 Button to Create a Meeting](/docs/example-oauth-configuration-for-zoom#configuring-an-8450-button-to-create-a-meeting)

---

### Creating a Zoom Application

Create a Zoom application and obtain the required credentials for OAuth.

**To create a Zoom application:**

1. Sign in to the [**Zoom Marketplace**](https://marketplace.zoom.us/).
2. Select **Develop**→**Build App**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Untitled (3).png)
3. Accept the **API License and Terms of Use**.
4. Select **General App**, then select **Create**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(843).png)
5. Copy the **Client ID**and **Client Secret**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-07 141330 (1).png)
6. Enter your Algo device’s callback URL using this format: `https:///control/oauth-callback.lua`

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-07 141650 (1).png)
7. Go to **Scopes**and select **Add Scopes**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-07 154642 (1).png)
8. Enter****`meeting:write:meeting` to search the scope, then select **Done**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-07 154848 (1).png)

### Creating an OAuth Authorization Profile

Create an OAuth profile to store your Zoom authentication settings.

Ensure you have the following:

- **Client ID**
- **Client Secret**

**To create Zoom OAuth Profile:**

1. Log in to your device’s web interface using HTTPS.

HTTPS is required by Zoom OAuth process.
2. Go to the **Advanced Settings** → **OAuth**.
3. Set a **Name**for your OAuth profile.
4. Select **ZOOM**as the **Provider Type.**
5. Accept the following automatically populated values:
  - **Grant Type**: AUTH_CODE_PKCE
  - **Token URL**: [https://zoom.us/oauth/token](https://zoom.us/oauth/token)
  - **Auth URL**: [https://zoom.us/oauth/authorize](https://zoom.us/oauth/authorize)
  - **Client Auth Mode**: HTTP_BASIC
  - **Scope Mode**: SCOPES_LIST
  - **Scope:**`meeting:write:meeting`****
  - **PKCE Method**: S256
  - **Response Type**: code
6. Configure the following:
  - **Client ID**: Enter your Zoom application’s **Client ID**.
  - **Client Secret**: Enter your Zoom application’s **Client Secret**.
  - **PKCE Redirect URI**: Set to `https://&lt;ALGO_DEVICE_IP&gt;/control/oauth-callback.lua`

> [!NOTE]
> Note
> 
> You must use HTTPS in the URI.
> 
> Replace <ALGO_DEVICE_IP> with your device IP.
7. Leave the following fields blank. These values are automatically populated during authorization.
  - **PKCE Authorization Code**
  - **PKCE Code Verifier**
  - **PKCE Refresh Token**

> [!NOTE]
> Note
> 
> Refresh tokens can expire or become invalid for several reasons, such as revoked app access, password changes, unused tokens, or admin policy restrictions. Refer to the OAuth provider’s documentation for more information. If a refresh token expires or becomes invalid, your automation stops working until OAuth access is reauthorized.
8. Select **START AUTHORIZATION**.

Upon successful authorization, the **PKCE Authorization Code** and **PKCE Code Verifier** fields are populated.
9. Select **Create Profile**.****

Your profile appears under the **OAuth Profiles** list.

### Creating a Test Meeting

You can create a test meeting to verify that the configuration is working correctly.

**To create a Zoom meeting:**

1. Log in to your device’s web interface using HTTPS.

HTTPS is required by Zoom OAuth process.
2. Go to the **Advanced Settings** → **OAuth**.
3. Select your **ZOOM**profile from the **Test OAuth Profile** dropdown list.
4. Select **ZOOM**as the **Provider Type Template.**
5. Edit the **Data Payload.**

```plaintext
{
  "topic": "OAuth Test Meeting",
  "type": 2,
  "start_time": "2026-03-02T10:00:00Z",
  "duration": 30,
  "timezone": "UTC"
}
```
6. Select **RUN OAuth Test**.

Upon success:
  - The meeting appears on your Zoom Calendar

  

A successful response is displayed.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-07 160331 (1).png)

### Configuring an 8450 Button to Create a Meeting

You can configure a button on the Algo 8450 to create a Zoom meeting using an existing OAuth profile.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(847).png)

**To configure a 8450 button to create a Zoom meeting:**

1. Create a button on a 8450 screen.
2. Set the **Button Status** to **Enabled.**
3. Configure the following:
  - **Text**: Enter the button display text.
  - **Action**: Set to **Send API Request**.
  - **Number of API Requests**: Set to **1**.
  - **Request 1 - Command**: Set to **Other**.
  - **Request 1 - Method**: Set to **POST**.
  - **Request 1 - Custom Path**: Set to `v2/users/me/meetings`
  - **Request 1 - Targets**: Set to `api.zoom.us`
  - **Request 1 - OAuth Profile**: Select your Zoom profile.
  - **Request 1 - Headers**: Set to **Custom Headers**.
  - **Request 1 - Custom Headers**: Set to `Content-Type: application/json; charset=utf-8`
  - **Request 1 - Data Payload**: You can use the default payload.

```plaintext
{
  "topic": "Emergency Meeting",
  "type": 2,
  "start_time": "2026-03-15T10:00:00Z",
  "duration": 30,
  "timezone": "UTC"
}
```
4. **Select Save.**

Press the button and verify that the meeting is created to the Zoom calendar.

### Troubleshooting

**I get a 502 error when I run the OAuth Test**

You may be logged out of your Algo device’s web interface. Log in again and retry.

**After I run the “Start Authorization” again, my OAuth Test fails**

Each time you run **Start Authorization** again, select **Update Profile** to save the new credentials before running the test.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-06 151132 (1).png)

**My OAuth profile stops working.**

An OAuth profile can stop working if the OAuth provider rejects or invalidates the access or refresh token. Refer to the OAuth provider’s documentation for more information. If this occurs, the OAuth profile must be reauthorized.
