# Integrate Cloud Voice with Microsoft Entra ID (Legacy)

Use the legacy method to link Cloud Voice with Microsoft Entra ID (formerly Azure Active Directory) by manually registering an application in your Microsoft Entra tenant and pairing it with your phone system.

:::caution
This procedure applies only to Cloud Voice firmware **earlier than 84.22.0.138**. On version **84.22.0.138** or later, the application is configured automatically instead of by hand, follow [Integrate Cloud Voice with Microsoft Entra ID](/pbx/integrations/azure-ad/integrate-cloud-voice-cloud-voice-with-azure-active-directory/).

Do not point a single Entra application at more than one Cloud Voice system; sharing one registration can break some integration features.
:::

## Requirements

| Item | Requirement |
| --- | --- |
| Microsoft Entra ID | Free, Office 365 apps, Premium P1, or Premium P2 plan |
| Cloud Voice | Firmware version **84.21.0.66** or later |

## Prerequisites

Have the following in place before you start:

- Your organization already runs a Microsoft Entra tenant.
- You can sign in with a Microsoft account that holds the **Global Administrator** role, which is required to complete the setup.

## Overview

The integration spans both your phone system and the Azure portal. You will:

1. Collect the redirect URIs that Cloud Voice generates.
2. Register a new application in your Microsoft Entra tenant.
3. (Optional) Add the SSO redirect URI so users can sign in with their Microsoft accounts.
4. Grant the application the Microsoft Graph permission it needs.
5. Create a client secret for the application.
6. Enter the application details back in Cloud Voice to complete the connection.

## Step 1. Get the redirect URIs from Cloud Voice

You supply these redirect URIs (URI stands for Uniform Resource Identifier, a web address) when you register the Entra application, so gather them first.

1. Sign in to the Cloud Voice web portal and go to **Integrations > Collaboration**.
2. Next to **Microsoft 365**, click **Integrate**.
3. Under **App Registration**, locate and copy the two redirect URIs.

   
   ![Cloud Voice, the App Registration panel showing the redirect URIs to copy](/images/pbx/obtain-auth-info-cloud-1.png)

   - **Redirect URI**: The address you are returned to once the integration finishes authenticating.
   - **Client SSO Redirect URI**: The address used to enable Single Sign-on (SSO) for the Cloud Voice App.

## Step 2. Register an application in your Microsoft Entra tenant

Create the application that ties Cloud Voice to Microsoft Entra ID.

1. Sign in to the [Microsoft Azure Portal](https://portal.azure.com/) with your **Global Administrator** account.
2. Search for and open the **Microsoft Entra ID** service to enter your organization's directory.

   ![The Azure portal search bar with Microsoft Entra ID selected](/images/pbx/search-aad.png)

3. In the directory's left navigation, select **App registrations**, then click **New registration**.

   
   ![Cloud Voice, the App registrations page with New registration highlighted](/images/pbx/create-an-application.png)

4. On the **Register an application** page, complete the form:

   
   ![Cloud Voice, the Register an application form with name, account type, and redirect URI fields](/images/pbx/register-an-application-cloud.png)

   a. Enter the registration details:
      - **Name**: A label that helps you recognize the application later.
      - **Supported account types**: Choose **Accounts in this organizational directory only**.
      - **Redirect URI**: In the platform drop-down, select **Web**, then paste the **Redirect URI** you copied from Cloud Voice.

   b. Click **Register**.

      The application's **Application (client) ID** and **Directory (tenant) ID** appear on the **Overview** page. Record both values, you enter them in Cloud Voice later.

      
      ![Cloud Voice, the application Overview page showing the client ID and tenant ID](/images/pbx/copy-app-id-and-tenant-id.png)

## Step 3. (Optional) Add the SSO redirect URI to the application

Complete this step only if you want users synced from Microsoft Entra ID to sign in to the Cloud Voice App with their Microsoft accounts. To enable SSO, add the Client SSO Redirect URI to the application.

1. In the application's left navigation, open **Authentication**.

   
   ![Cloud Voice, the Authentication section of the Entra application](/images/pbx/go-to-authentication-cloud.png)

2. Add the Cloud Voice App SSO redirect URI:

   
   ![Cloud Voice, adding a redirect URI under the Web platform](/images/pbx/add-redirect-uri-cloud.png)

   a. On the **Authentication** page, click **Add URI** in the **Web** section.
   b. Paste the **Client SSO Redirect URI** you copied from Cloud Voice.
   c. Click **Save**.

## Step 4. Grant permissions to the application

Give the application the Microsoft Graph permission it needs to read and write user presence in Microsoft Entra ID.

1. In the application's left navigation, open **API permissions**, then click **Add a permission**.

   
   ![Cloud Voice, the API permissions page with Add a permission highlighted](/images/pbx/go-to-add-api-permission.png)

2. On the **Select an API** page, choose **Microsoft APIs > Microsoft Graph**.

   ![The Select an API page with Microsoft Graph selected](/images/pbx/select-microsoft-graph-api.png)

3. Add the presence permission:

   a. Click **Application permissions**, search for and select **Presence.ReadWrite.All**, then click **Add permissions**.

      ![The application permissions list with Presence.ReadWrite.All selected](/images/pbx/select-app-permissions.png)

   b. Click **Grant admin consent for...** to apply the permission.

      :::caution
      Granting admin consent is required. Adding the permission on its own is not enough: until an administrator consents, the permission **Status** stays ungranted and Cloud Voice cannot update user presence in Microsoft 365.
      :::

      
      ![Cloud Voice, the Grant admin consent button on the API permissions page](/images/pbx/admin-consent.png)

   c. In the confirmation dialog, click **Yes**.

      
      ![Cloud Voice, the admin consent confirmation dialog](/images/pbx/admin-consent-yes.png)

      The permission's **Status** switches to a green **Granted** indicator, confirming the application now holds the permission.

## Step 5. Create a client secret for the application

The client secret authenticates the application during the integration.

1. In the application's left navigation, go to **Certificates & secrets > Client secrets**, then click **New client secret**.

   
   ![Cloud Voice, the Client secrets tab with New client secret highlighted](/images/pbx/go-to-create-new-secret.png)

2. On the **Add a client secret** page:

   a. Enter a description and choose an expiration period.

      :::note
      When the client secret reaches its expiration date it stops working, and the Microsoft 365 integration goes offline until you create a new secret and enter it in Cloud Voice again. Pick an expiration you can keep track of, and set a reminder to renew the secret before then.
      :::

      ![The Add a client secret form with description and expiry fields](/images/pbx/add-a-new-secret.png)

   b. At the bottom of the page, click **Add**. The new secret appears in the **Client secrets** list.

3. Copy the secret's **Value**: you enter it in Cloud Voice later.

   :::caution
   Copy the secret value before you navigate away. Azure shows it only once, and if you lose it you must generate a new secret.
   :::

   
   ![Cloud Voice, the client secret Value field ready to copy](/images/pbx/copy-secret-value.png)

## Step 6. Connect Cloud Voice to Microsoft Entra ID

Enter the application's IDs and secret in Cloud Voice to finish the connection.

1. Sign in to the Cloud Voice web portal and go to **Integrations > Collaboration**.
2. Next to **Microsoft 365**, click **Integrate**.
3. Under **App Registration**, fill in:
   - **Application (Client) ID**: Paste the application (client) ID.
   - **Tenant ID**: Paste the directory (tenant) ID.
4. Under **Certificates & Secrets**, paste the secret into the **Client Secret** field.
5. Click **Save**. Cloud Voice redirects you to the Microsoft sign-in page.
6. Sign in with the Microsoft account that has the **Global Administrator** role.

   
   ![Cloud Voice, the Microsoft account picker during sign-in](/images/pbx/pick-an-account.png)

7. If Microsoft prompts for an extra security check, click **Next** to complete it, or skip it for now.

   
   ![Cloud Voice, the Microsoft additional security verification prompt](/images/pbx/account-authenticathor.png)

8. Review the requested permissions and click **Accept**.

   
   ![Cloud Voice, the permission consent window with the Accept button](/images/pbx/permission-authorization-new.png)

9. Back on the Cloud Voice configuration page, click **OK** to close the dialog.

   ![The integration success dialog with an OK button](/images/pbx/sync-integration-succeed-new.png)

## Result

The integration status shows **Connected**, confirming that Cloud Voice is linked to your organization's Microsoft Entra ID.

![Cloud Voice, the Microsoft 365 integration showing a Connected status](/images/pbx/integration-complete.png)

## What to do next

Define synchronization rules to bring the users and groups you want from Microsoft Entra ID into Cloud Voice:

- [Synchronize users from Microsoft Entra ID to Cloud Voice](/pbx/integrations/azure-ad/synchronize-azure-ad-users-to-cloud-voice-cloud-voice/)
- [Synchronize groups from Microsoft Entra ID to Cloud Voice](/pbx/integrations/azure-ad/synchronize-azure-ad-groups-to-cloud-voice-cloud-voice/)
