Microsoft 365  

How Outlook Room Calendars Work: Real-Time Availability Using Microsoft Graph

What Are Rooms in Outlook Calendar?

In Microsoft Outlook, rooms are shared resources that represent physical meeting spaces like:

  • Conference rooms

  • Meeting halls

  • Training rooms, etc.

These are also called Room Mailboxes in Microsoft Exchange. A room is treated like a user with a calendar:

  • It has an email address (e.g., [email protected])

  • It has its own calendar

  • It can accept/decline meeting requests automatically

Why Rooms Are Used

Rooms help organizations:

  • Avoid double booking

  • Provide real-time availability

  • Automate meeting scheduling

How Rooms Work

When you schedule a meeting in Outlook:

  • You add a room like an attendee

  • Outlook checks the room's calendar

Based on availability:

  • ✅ Accepts if free

  • ❌ Declines if busy

And it even sends mail for accept/decline which is handled automatically by Exchange.

Evolution of Room Management: From PowerShell to Microsoft Places

Earlier, managing rooms in Microsoft Exchange required administrators to use PowerShell scripts.

Traditional Approach (PowerShell)

  • Rooms were created as resource mailboxes using scripts

  • Required technical knowledge

  • Changes (like creating or updating rooms) could take up to 24 hours to reflect across the system

  • No visual interface for managing buildings, floors, or room metadata

This made room management:

  • Time-consuming

  • Error-prone

  • Difficult for non-technical users

Modern Approach with Microsoft Places

With Microsoft Places, Microsoft introduced a user-friendly and centralized experience for managing workplace resources.

Key Advantages

  • Easily create and manage:

    • Buildings

    • Floors

    • Rooms

  • No scripting required

  • Changes reflect much faster compared to the traditional 24-hour delay

  • Admins can configure everything through a UI

  • Can add details like:

    • Room capacity

    • Teams device, etc.

  • Works seamlessly with Outlook

How to Retrieve Room Booking Information

To retrieve room booking information, you need to use Microsoft Graph API – getSchedule. That's exactly what returns:

  • availabilityView

  • scheduleItems

  • workingHours

In Power Automate, use Send an HTTP request of Outlook to get schedule.

URI

https://graph.microsoft.com/v1.0/users/[email protected]/calendar/getSchedule

Instead of [email protected], use your room mail.

Method

POST

Body

{
  "schedules": [
    "[email protected]",
    "[email protected]"
  ],
  "startTime": {
    "dateTime": "2026-04-16T00:00:00",
    "timeZone": "UTC"
  },
  "endTime": {
    "dateTime": "2026-04-16T23:59:59",
    "timeZone": "UTC"
  },
  "availabilityViewInterval": 30
}

You can pass multiple rooms in schedules. In the result, it will return schedules of all those rooms.

The above action will return output like:

{
  "value": [
    {
      "scheduleId": "[email protected]",
      "availabilityView": "000111000...",
      "scheduleItems": [
        {
          "start": {
            "dateTime": "2026-04-16T09:00:00",
            "timeZone": "UTC"
          },
          "end": {
            "dateTime": "2026-04-16T10:00:00",
            "timeZone": "UTC"
          },
          "status": "busy"
        }
      ]
    },
    {
      "scheduleId": "[email protected]",
      "availabilityView": "000000000...",
      "scheduleItems": []
    }
  ]
}

Output Explained

  • scheduleId: Email of the room/resource

  • availabilityView: Think of availabilityView as a timeline that exactly maps the time range you sent in your request (startTime and endTime defined in your request body).

Returns a string like:

000111000

Each character = 30 minutes slot.

ValueMeaning
0Free
1Tentative
2Busy
3OOF (Out of Office)
  • scheduleItems: Detailed meetings with:

    • Start time

    • End time

    • Status

Only shows actual bookings, not free slots.

So this is how you get the real-time room availability.

Conclusion

In this article, you learned what Outlook room calendars are, the traditional and modern approaches to creating and managing them, and how to retrieve their availability using Microsoft Graph. You also gained an understanding of how real-time availability works through slot-based data, enabling you to build efficient and intelligent room booking solutions.