---
title: "How to Connect Zoom and Zoom Phone"
img: https://s3.us-east-2.amazonaws.com/unified-article-images/how_to_connect_zoom_and_zoom_phone-icon.png
date: 2026-07-02T12:33:00.000Z
tag: Guides
description: "This guide walks you through creating a Zoom OAuth app, configuring the right permissions, and connecting your Zoom account. You will need a Zoom account with..."
url: "https://docs.unified.to/guides/how_to_connect_zoom_and_zoom_phone"
---

# How to Connect Zoom and Zoom Phone
------
_July 2, 2026_

This guide walks you through creating a Zoom OAuth app, configuring the right permissions, and connecting your Zoom account. You will need a Zoom account with admin access for some features (user directory, call logs, and recordings).


---


## **What you need**

- A [**Zoom Marketplace**](https://marketplace.zoom.us/) developer account
- Zoom account admin access (required for directory, group, and Zoom Phone admin scopes)
- A Zoom Phone license if you plan to use the Zoom Phone integration
- Your Unified workspace (to store credentials and start the connection)
> **Note:** Zoom and Zoom Phone are separate integrations in Unified. You can use one OAuth app for both, as long as that app includes the scopes for every feature you need.

---


## **Step 1: Create a Zoom OAuth app**

1. Sign in to the [**Zoom App Marketplace**](https://marketplace.zoom.us/).
2. Go to **Develop** → **Build App**.
3. Choose **General App** and click **Create**.
4. Enter an app name and basic details.

On the **Basic Information** page:

1. Open **App Credentials** and note your **Development** Client ID and Client Secret.
    - Use development credentials while the app is still in testing.
    - After the app is published, switch to **Production** credentials.
2. Under **OAuth Information**, configure:
    - **OAuth Redirect URL** — use the exact URL for your Unified region (see below).
    - **OAuth Allow List** — add the same URL (or the base domain if Zoom accepts it).
3. If **Strict Mode URL** is enabled, the redirect URL must match character-for-character.

### **OAuth redirect URL by region**


Add the redirect URL that matches where your Unified workspace is hosted:


| **Region** | **Redirect URL**                       |
| ---------- | -------------------------------------- |
| US         | `https://api.unified.to/oauth/code`    |
| EU         | `https://api-eu.unified.to/oauth/code` |
| AU         | `https://api-au.unified.to/oauth/code` |
> **Important:** Copy the URL exactly. A trailing slash, wrong subdomain, or `http` instead of `https` will cause the connection to fail.

---


## **Step 2: Add the required scopes (permissions)**


In your Zoom app, open the **Scopes** page and add the permissions below. Only add scopes for the features you actually use.


For each scope, Zoom may ask you to describe why your app needs it. Keep the explanation tied to your use case (e.g. 'Read call history for CRM logging' or 'List meetings for calendar sync').


### **Required for sign-in (Zoom and Zoom Phone)**


Add these for any connection:

- `user_profile`
- `user_info:read`
- `user:read`

### **Zoom — users and groups**


If you sync users or groups:


| **Feature**  | **Scopes to add**                                    |
| ------------ | ---------------------------------------------------- |
| Read users   | `user:read:user:admin`, `user:read:list_users:admin` |
| Write users  | `user:write:admin`                                   |
| Read groups  | `group:read:admin`, `group:read:list_groups:admin`   |
| Write groups | `group:write:admin`                                  |
### **Zoom — meetings and webinars**


If you work with meetings or webinars:


| **Feature**                       | **Scopes to add**                                                                                                                                                                                                                                 |
| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Read meetings                     | `meeting:read:list_meetings`                                                                                                                                                                                                                      |
| Create / update / delete meetings | `meeting:write:meeting`, `meeting:update:meeting`, `meeting:delete:meeting`                                                                                                                                                                       |
| Read webinars                     | `webinar:read:list_webinars`                                                                                                                                                                                                                      |
| Manage webinars                   | `webinar:write:webinar`, `webinar:update:webinar`, `webinar:delete:webinar`, `webinar:write:registrant`, `webinar:update:registrant`, `webinar:delete:registrant`, `webinar:write:panelist`, `webinar:update:panelist`, `webinar:delete:panelist` |
### **Zoom Phone — calls, recordings, and users**


If you use the Zoom Phone integration:


| **Feature**           | **Scopes to add**            |
| --------------------- | ---------------------------- |
| Read Zoom Phone users | `phone:read:user:admin`      |
| Read call history     | `phone:read:call_log:admin`  |
| Read call recordings  | `phone:read:recording:admin` |
> **Note:** Zoom Phone scopes require a Zoom Phone license on the account you connect.

---


## **Step 3: Add credentials in Unified**

1. In the Unified dashboard, open **Integrations**.
2. Enable **Zoom** and/or **Zoom Phone**.
3. Enter the **Client ID** and **Client Secret** from your Zoom app (development credentials while testing; production credentials after publish).
4. Save the integration.

The Client ID and Client Secret in Unified must match the values shown in the Zoom Marketplace for the same app and environment (Development vs Production).


---


## **Step 4: Connect a Zoom account**

1. Start a new connection for Zoom or Zoom Phone (from the dashboard or your app's auth flow).
2. You will be redirected to Zoom to sign in and approve the requested permissions.
3. After approval, you are redirected back and the connection is created.
> **Tip:** The Zoom user who authorizes the connection should be an account admin if you use admin-level scopes (users, groups, call logs, recordings).

---


## **Testing vs published apps**


Zoom apps start in **development / testing** mode. This affects who can connect.


### **While the app is in testing**

- Only Zoom accounts added as **authorized testers** (or users on the same Zoom account as the app owner) can complete OAuth.
- Use the **Development** Client ID and Client Secret in Unified.
- For each customer Zoom account that needs to connect **before** the app is published, that account must be added as a tester in the Zoom Marketplace:
    1. Open your app in the [**Zoom Marketplace Developer portal**](https://marketplace.zoom.us/develop/applications).
    2. Find **Add app for testing** / **Local Test** / **Authorized testers** (wording may vary).
    3. Add the customer's Zoom email or account.

If a customer sees an error that the app is not authorized, they are usually not on the tester list yet.


### **When the app is published**

- Any Zoom customer can connect without being added as a tester.
- Switch Unified to the **Production** Client ID and Client Secret from the Zoom app.
- Existing connections may need to be **re-authorized** after you switch credentials or publish.
> **Note:** Publishing goes through Zoom's review process. Zoom may require security review for certain scopes and can take several business days. Plan ahead if you need many customers to connect on a fixed timeline.

---


## **Checklist before connecting**


Use this quick checklist if a connection fails:

- [ ] Client ID and Client Secret in Unified match the Zoom app (same environment: Development or Production).
- [ ] OAuth Redirect URL in Zoom is exactly `https://api.unified.to/oauth/code` (or the EU/AU URL for your region).
- [ ] The same URL is on the OAuth Allow List.
- [ ] All scopes your product needs are added in the Zoom app.
- [ ] If the app is still in testing, the connecting user's Zoom account is an authorized tester.
- [ ] The authorizing user has admin rights when using admin scopes.
- [ ] For Zoom Phone: the account has Zoom Phone enabled.

---


## **Troubleshooting**


### **'Invalid redirect URI' or redirect errors**


The redirect URL in Zoom does not match what Unified sends. Confirm the exact URL for your region and that Strict Mode is not blocking a valid redirect.


### **'App not authorized' or customer cannot sign in**


The app is likely still in testing and the customer's Zoom account is not an authorized tester. Add them in the Zoom Marketplace, or publish the app.


### **Connection works but data is missing**


Usually a missing scope. Compare the scopes in your Zoom app with the tables in Step 2 and add any that apply to the features you use.


### **Zoom Phone returns no calls or recordings**

- Confirm `phone:read:call_log:admin` and/or `phone:read:recording:admin` are added.
- Confirm the connected account has Zoom Phone and admin access to phone data.

### **After publishing, connections stopped working**


Update Unified with the **Production** Client ID and Client Secret, then ask affected users to connect again.


---


## **Related Zoom products**


Unified also supports **Zoom Calendar** as a separate integration with its own calendar-specific scopes. If you only need Zoom meetings, webinars, users, and Zoom Phone, follow this guide. If you need Zoom's native calendar product, enable the Zoom Calendar integration and add its scopes in the same (or a separate) Zoom OAuth app.


For Zoom developer documentation, see [**developers.zoom.us**](https://developers.zoom.us/).