---
title: Set Up Office 365 Calendar Integration
description: Learn how to integrate Microsoft Office 365 Calendar with Clearooms. This guide covers registering Clearooms as an app in Azure, adding credentials, and importing meeting rooms.
---

[Skip to content](https://knowledgebase.clearooms.com/set-up-office-365-calendar-integration#main-content)

![Colour Transparent](https://knowledgebase.clearooms.com/hs-fs/hubfs/Colour%20Transparent.png?width=1672&height=313&name=Colour%20Transparent.png)

Open main navigation

Close main navigation

- [Contact us](https://2feg9n.share-eu1.hsforms.com/2LEUbrOfJTIe01qcEQusU5w)

[Contact us](https://2feg9n.share-eu1.hsforms.com/2LEUbrOfJTIe01qcEQusU5w)

 How can we help you?

- There are no suggestions because the search field is empty.

1. [Knowledge Base](https://knowledgebase.clearooms.com/?hsLang=en-gb)
2. [Security](https://knowledgebase.clearooms.com/security?hsLang=en-gb)
3. [SSO, SCIM Apps & Integrations](https://knowledgebase.clearooms.com/security?hsLang=en-gb#sso-scim-apps-integrations)

# Set Up Office 365 Calendar Integration

## Requirements and Steps for Office 365 Calendar Integration.

![microsoft](https://knowledgebase.clearooms.com/hs-fs/hubfs/microsoft.png?width=670&height=143&name=microsoft.png)

To set up the Microsoft 365 Calendar integration you will need:

- An **Administrator-level account** in Clearooms.
- A subscription to **Microsoft Entra ID** (formerly Azure Active Directory) with admin rights to register applications and grant tenant-wide consent.

There are three steps to integrating your company's Microsoft 365 calendars with Clearooms:

1. Register Clearooms as an app in **Microsoft Entra ID**.
2. Add the app's credentials to Clearooms.
3. Import meeting rooms into Clearooms.

**Hybrid (on-premises) Exchange deployments are not supported.**

Microsoft [deprecated the on-premises REST API in March 2023](https://techcommunity.microsoft.com/t5/exchange-team-blog/the-end-of-the-rest-api-for-on-premises-mailboxes-preview/ba-p/3221219). The integration only works with mailboxes hosted in Exchange Online (Microsoft 365). Migrate any on-premises room mailboxes to Exchange Online before continuing.

This guide can be downloaded as a PDF:  [Here](https://knowledgebase.clearooms.com/hubfs/Office%20365%20Calendar%20Integration%20Guide.pdf?hsLang=en-gb)

 

### **Step 1 — Register the Microsoft Entra app**

You will register Clearooms as an app to obtain two pieces of information that you'll later paste into the Clearooms portal:

1. **Application (client) ID**
2. **Client Secret value**

When you enable a calendar integration, you give Clearooms permission to read and write all calendar data in your organisation. In practice, our integration only pulls a minimal subset of calendar metadata (start, end, organiser, subject — never body content). Microsoft Graph does not let app permissions be scoped to specific mailboxes, which is why the permission appears tenant-wide.

If you do not own the Microsoft Entra tenant, you may need to bring in your tenant administrator to complete this step.

#### **1.1 Create the app**

1. Sign in to [https://entra.microsoft.com](https://entra.microsoft.com) (or [portal.azure.com](https://portal.azure.com) → *Microsoft Entra ID*) under an Administrator account.
2. In the left-hand panel, select **Microsoft Entra ID**.
3. Choose **App registrations**.
4. Click **+ New registration** at the top of the page.
5. In the *Register an application* pane, enter a name — for example **Clearooms Calendar Integration**.
6. For *Supported account types*, choose **Accounts in this organisational directory only**.
7. Leave the *Redirect URI* field empty.
8. Click **Register**. You will be taken to the new app's overview pane.

**IMPORTANT: Copy the Application (client) ID** from the Essentials block at the top of the overview pane.

#### **Step 1.2 App overview pane**

The new app's Overview pane in Microsoft Entra ID. The Application (client) ID is the value to copy first.

![Screenshot 1 - App Registration](https://knowledgebase.clearooms.com/hs-fs/hubfs/Screenshot%201%20-%20App%20Registration.png?width=670&height=408&name=Screenshot%201%20-%20App%20Registration.png)

#### **STEP 1.3 Generate the client secret**

Now generate a secret that's specific to the app. For more information on rotating the secret when it expires, see [Renewing your Microsoft 365 Calendar integration secret](https://knowledgebase.clearooms.com/renewing-your-office-365-calendar-integration-secret-code?hsLang=en-gb).

1. In the app's left rail, click **Certificates & secrets**.
2. On the **Client secrets** tab, click **+ New client secret**.
3. Enter a description — e.g. *Clearooms key*.
4. Choose an expiry — **1 year** or **2 years** (recommended).
5. Click **Add**.

**Copy the Value, not the Secret ID.**

The **Value** column is only readable once — as soon as you leave the page, Microsoft hides it. If you forget to copy it, delete the secret and create a new one. The **Secret ID** looks similar but won't authenticate Clearooms.

**Plan the renewal now.**

Secrets do not auto-renew. When this one expires, the integration will stop without warning. Set a calendar reminder for one month before expiry. Renewal procedure: [Renewing your Microsoft 365 Calendar integration secret](https://knowledgebase.clearooms.com/renewing-your-office-365-calendar-integration-secret-code?hsLang=en-gb).

#### **Step 1.4 · Certificates & secrets pane**

The Certificates & secrets pane after you click Add. The Value (highlighted) is the only chance to copy the secret — copy it now.

#### **![Copy the secret](https://knowledgebase.clearooms.com/hs-fs/hubfs/Copy%20the%20secret.png?width=670&height=429&name=Copy%20the%20secret.png)**

#### **Step 1.5 · Permissions cheat-sheet**

Clearooms uses three Microsoft Graph application permissions. Type must be Application, not Delegated

-  Clearooms calls Graph as itself, not on behalf of a signed-in user. 

![PERMISIONS CHEAT LIST](https://knowledgebase.clearooms.com/hs-fs/hubfs/PERMISIONS%20CHEAT%20LIST.png?width=670&height=340&name=PERMISIONS%20CHEAT%20LIST.png)

#### **STEP 1.6 Assign API permissions**

Finally, give the app permission to read your company's calendars:

1. In the app's left rail, click **API permissions**.
2. Click **+ Add a permission**.
3. Choose **Microsoft Graph**.
4. Select **Application permissions** (not Delegated).
5. Tick the three permissions: 
     - **Calendars.ReadWrite** — Read and write calendars in all mailboxes
     - **Directory.Read.All** — Read directory data
     - **Place.Read.All** — Read all company places
6. Click **Add permissions**.
7. Back on the API permissions list, click **Grant admin consent for \<your tenant\>** and confirm.

**Type must be Application — not Delegated.**

Clearooms calls Microsoft Graph as itself, not on behalf of a signed-in user. `User.Read` (Delegated) is added automatically by Microsoft when the app is created — leave it in place; Clearooms does not use it.

![Assign permissions](https://knowledgebase.clearooms.com/hs-fs/hubfs/Assign%20permissions.png?width=670&height=286&name=Assign%20permissions.png)

#### ** Step 1.7 · Grant admin consent**

Microsoft will ask you to confirm the consent. Once you click Yes, every row's status should change to

Granted for \<your tenant\>.

![Grant admin consent](https://knowledgebase.clearooms.com/hs-fs/hubfs/Grant%20admin%20consent.png?width=670&height=362&name=Grant%20admin%20consent.png)

**If you do not see the Grant button, you are not a Global Administrator.**

Forward the app registration name and tenant ID to your Global Admin and ask them to perform the consent step. Without it, the Clearooms *Test Settings* button will fail with a 403 error.

 

### **Step 2 — Add the credentials to Clearooms**

You should now have three values from Microsoft Entra:

- **Application (client) ID** — from the app's *Overview* pane
- **Client secret Value** — from *Certificates & secrets*
- **Directory (tenant) ID** — from the Microsoft Entra ID *Overview* pane

Enter them into the Clearooms portal:

1. Sign in to [portal.clearooms.com](https://portal.clearooms.com) as an administrator.
2. Open **Settings → Apps & Integrations**.
3. Choose **Office 365 Integration**.
4. Toggle **Enable Office 365 Calendar Integration** on.
5. Paste the **Application (client) ID** into the Client ID field.
6. Paste the **Client Secret Value** into the Client Secret field.
7. Paste the **Directory (tenant) ID** into the Tenant ID field.
8. Click **Save**, then **Test Settings** to confirm the connection. 

![Three values](https://knowledgebase.clearooms.com/hs-fs/hubfs/Three%20values.png?width=670&height=129&name=Three%20values.png)

![test Settings](https://knowledgebase.clearooms.com/hs-fs/hubfs/test%20Settings.png?width=670&height=425&name=test%20Settings.png)

**About the Webhook URL field.** The Webhook URL on the Office 365 Integration page is read-only. It is the inbound endpoint Microsoft Graph posts to when a room booking changes. You do not need to configure it. If your network team filters outbound traffic from Microsoft 365, share the URL with them so they can allowlist `api.clearooms.com`.

#### Test Settings — what to expect

After clicking **Test Settings**, Clearooms calls Microsoft Graph using the credentials you supplied. You should see one of two results. 

**✓ Connection successful.**

Credentials are valid, admin consent is granted, and Clearooms can list the room mailboxes available for import. Move on to step 3.

**! Connection failed.**

The most common causes — in order of frequency:

1. **Wrong Tenant ID.** Double-check the value against Microsoft Entra ID → Overview. The Tenant ID is a GUID — about 36 characters with hyphens.
2. **Pasted the Secret ID instead of the Secret Value.** Re-open Certificates & secrets in Microsoft Entra. If the Value is no longer visible, delete the secret and create a new one.
3. **Admin consent not granted.** Go back to API permissions — every required row should say *Granted for \<your tenant\>*.
4. **Permission type set to Delegated.** All three Clearooms permissions must be type **Application**.
5. **Secret has expired.** The Certificates & secrets page shows the expiry date.

If an error still appears, please check that all the steps above are completed correctly. New rooms added to Microsoft can take up to **24 hours** to become visible in the import screens on Clearooms.

### **Step 3 — Import meeting rooms into Clearooms**

With the integration live, choose which Microsoft 365 room mailboxes you want to surface in Clearooms.

1. Go to **Settings**.
2. Click the **Meeting Rooms** tab.
3. Click **Manage Rooms**.
4. Choose the office to import the room into.
5. Click **+ Import** next to each room you want to expose in Clearooms.

![Import rooms](https://knowledgebase.clearooms.com/hs-fs/hubfs/Import%20rooms.png?width=670&height=721&name=Import%20rooms.png)

**A new room is missing from the list?**

New rooms added in Microsoft 365 can take up to **24 hours** to appear in this dialog — Microsoft Graph caches the place directory aggressively. If a room is still missing after 24 hours, check that it has a license assigned and is not marked *HiddenFromAddressListsEnabled*.

### **Step 4 — Add rooms to your office plan**

1. [Go to **Settings → Offices**, then choose **Edit Office Plan**](https://portal.clearooms.com/settings/account/offices).
2. Scroll down to your floor plan.
3. Click in an empty space to create a new icon.
4. Switch the top-right toggle from **Desks** to **Rooms**.
5. Select the room from the dropdown.
6. Click **Add to plan**.

![Add room to plan](https://knowledgebase.clearooms.com/hs-fs/hubfs/Add%20room%20to%20plan.png?width=417&height=315&name=Add%20room%20to%20plan.png)

Room icons can be moved by clicking on an existing icon and dragging around the screen, or by clicking on the icon and using the four directional arrows located at the bottom right of the edit screen.

Your meeting room icons do not move when you upload a new image, so if the plan is a different size or rooms have changed position, you will need to relocate the icons.

### **What next**

- **Pair a Room Display App.** Mount a tablet outside each room running the Clearooms Room Display App for green / red availability and one-tap booking. [Setup guide](https://knowledgebase.clearooms.com/room-display-app?hsLang=en-gb).
- **Schedule the secret renewal.** The client secret expires in 1 or 2 years. Add a reminder to your team calendar one month before. [Renewal procedure](https://knowledgebase.clearooms.com/renewing-your-office-365-calendar-integration-secret-code?hsLang=en-gb).
- **Tell your team.** Bookings made anywhere — Outlook, Teams, the Clearooms portal or the mobile app — now sync both ways.

You can download this guide as a PDF [here](https://knowledgebase.clearooms.com/hubfs/Office%20365%20Calendar%20Integration%20Guide.pdf?hsLang=en-gb).

---

 

- [FAQs](https://knowledgebase.clearooms.com/faqs?hsLang=en-gb#main-content)

    - [General](https://knowledgebase.clearooms.com/faqs?hsLang=en-gb#general)
    - [Hosting & Security](https://knowledgebase.clearooms.com/faqs?hsLang=en-gb#hosting-security)
    - [Desk Booking](https://knowledgebase.clearooms.com/faqs?hsLang=en-gb#desk-booking)
    - [Meeting Rooms](https://knowledgebase.clearooms.com/faqs?hsLang=en-gb#meeting-rooms)
- [Getting started](https://knowledgebase.clearooms.com/getting-started?hsLang=en-gb)
- [General](https://knowledgebase.clearooms.com/general?hsLang=en-gb#main-content)

    - [Troubleshooting](https://knowledgebase.clearooms.com/general?hsLang=en-gb#troubleshooting)
    - [Desks](https://knowledgebase.clearooms.com/general?hsLang=en-gb#desks)
    - [Meeting Rooms](https://knowledgebase.clearooms.com/general?hsLang=en-gb#meeting-rooms)
    - [Admin Settings](https://knowledgebase.clearooms.com/general?hsLang=en-gb#admin-settings)
    - [Planning](https://knowledgebase.clearooms.com/general?hsLang=en-gb#planning)
- [Reports](https://knowledgebase.clearooms.com/reports?hsLang=en-gb)
- [Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#main-content)

    - [Users](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#users)
    - [Desk Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#desk-settings)
    - [Meeting Room Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#meeting-room-settings)
    - [Room Display App Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#room-display-app-settings)
    - [Services](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#services)
    - [Account Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#account-settings)
    - [Event Management](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#event-management)
    - [Visitor Management](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#visitor-management)
    - [Custom Fields](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#custom-fields)
    - [Multi-Factor authentication](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#multi-factor-authentication)
    - [Manager Settings](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#manager-settings)
    - [Billing](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#billing)
    - [Status](https://knowledgebase.clearooms.com/settings?hsLang=en-gb#status)
- [Support](https://knowledgebase.clearooms.com/support?hsLang=en-gb)
- [Security](https://knowledgebase.clearooms.com/security?hsLang=en-gb#main-content)

    - [SSO, SCIM Apps & Integrations](https://knowledgebase.clearooms.com/security?hsLang=en-gb#sso-scim-apps-integrations)
    - [Privacy](https://knowledgebase.clearooms.com/security?hsLang=en-gb#privacy)
- [Desk Booking App](https://knowledgebase.clearooms.com/desk-booking-app?hsLang=en-gb)
- [Room Display App](https://knowledgebase.clearooms.com/room-display-app?hsLang=en-gb)
- [Video Tutorials](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#main-content)

    - [Getting Started With Clearooms](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#getting-started-with-clearooms)
    - [Clearooms Desk Booking App: Getting Started With Clearooms](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#clearooms-desk-booking-app-getting-started-with-clearooms)
    - [Desks](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#desks)
    - [Meeting Rooms](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#meeting-rooms)
    - [Smart Booking And Favourites](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#smart-booking-and-favourites)
    - [Clearooms Room Display App](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#clearooms-room-display-app)
    - [Apps And Integrations](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#apps-and-integrations)
    - [Users](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#users)
    - [Office Plan](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#office-plan)
    - [Desk Neighbourhoods & Meeting Zones](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#desk-neighbourhoods-meeting-zones)
    - [My Bookings](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#my-bookings)
    - [Services](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#services)
    - [Kiosk](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#kiosk)
    - [Custom Fields](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#custom-fields)
    - [Who's In](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#whos-in)
    - [Status](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#status)
    - [Help Centre](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#help-centre)
    - [OpenSpaces](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#openspaces)
    - [Parking Spaces](https://knowledgebase.clearooms.com/video-tutorials?hsLang=en-gb#parking-spaces)
- [OpenSpaces](https://knowledgebase.clearooms.com/openspaces?hsLang=en-gb)
- [Parking Spaces](https://knowledgebase.clearooms.com/parking-spaces?hsLang=en-gb#main-content)

    - [Parking Misuse Reporting](https://knowledgebase.clearooms.com/parking-spaces?hsLang=en-gb#parking-misuse-reporting)

[![Colour Transparent](https://knowledgebase.clearooms.com/hs-fs/hubfs/Colour%20Transparent.png?width=1672&height=313&name=Colour%20Transparent.png "Colour Transparent")](http://clearooms.com)

<https://www.facebook.com/Clearooms> <https://www.linkedin.com/company/clearoomsapp/> [mailto:support@email.com](mailto:support@email.com)

Copyright © 2025, clearooms.com