Answer · Admin & security
How can an admin see every Microsoft Bookings calendar?
Last updated 3 min read5 sources
“How can an admin see and manage every Bookings calendar in the tenant?”
Asked in Microsoft Learn (opens in a new tab), Microsoft Learn (opens in a new tab) and Microsoft Feedback Portal (opens in a new tab)
Short answer
Microsoft Bookings has no admin console that shows every calendar. The FAQ says: "Each Bookings calendar is maintained independently. There's no consolidated view." A tenant admin can list every booking mailbox with PowerShell. To open one in Bookings, you must be staff on it with the Administrator or Viewer role, or hold Full Access to its mailbox. The standard fix is to list the mailboxes, grant yourself Full Access and Send As, then open each calendar from the Bookings page switcher.
Step 1: list every booking page and who can open it#
Each shared booking page is an Exchange mailbox of type SchedulingMailbox. It also appears in Microsoft Entra ID as an unlicensed user. Connect to Exchange Online PowerShell and run:
# All booking mailboxes
Get-EXOMailbox -RecipientTypeDetails SchedulingMailbox -ResultSize Unlimited
# Microsoft's FAQ command: booking mailboxes plus the users who have access
Get-Mailbox -RecipientTypeDetails SchedulingMailbox -ResultSize:Unlimited |
Get-MailboxPermission |
Select-Object Identity, User, AccessRights |
Where-Object {($_.user -like '*@*')}The second command finds orphaned pages: calendars whose only users have left the organization.
Step 2: give yourself access without becoming bookable#
Microsoft's add-staff doc calls this making someone a "super user". You get full access and send-as rights on the booking mailbox, but you don't appear as bookable staff.
# Full Access, without adding the mailbox to your Outlook
Add-MailboxPermission -Identity "bookingpage@contoso.com" -User "admin@contoso.com" -AccessRights FullAccess -Deny:$false -AutoMapping:$false
# Send As, so actions you take can send mail as the page
Add-RecipientPermission -Identity "bookingpage@contoso.com" -Trustee "admin@contoso.com" -AccessRights SendAs -Confirm:$falseLeave out -AutoMapping:$false and the booking mailbox is added to your Outlook automatically. Microsoft notes that these steps only work if you don't already have the Viewer role on that page.
Next, open Bookings and use the business-name drop-down (the caret on the home page) to switch between pages. The FAQ describes that search drop-down as the only consolidated view.
Taking over calendars from people who left#
The most common reason admins ask this question (100+ "same question" on the original 2017 thread) is a calendar whose owner has left. To recover it:
- Grant Full Access and Send As as shown above, or grant them to the new owner directly.
- Open the calendar and add the new owner as staff with the Administrator role. See what each staff role can do.
- Remove the departed person from the staff list of every calendar they were on. The FAQ notes that removing someone from Microsoft 365 doesn't remove them from Bookings.
- If the page isn't needed any more, export it and then delete it.
Reporting across all pages#
The built-in TSV export works one page at a time, and only for staff with the Administrator role. For a tenant-wide picture, the Microsoft Graph Bookings API can list booking businesses and their appointments. Application permissions have been generally available since July 2022, with read/write access to appointments and customers and read-only access to businesses, staff and services.
Some limits to plan for:
- Permissions are tenant-wide. There's no scoping to particular pages.
- Graph allows 4 concurrent Bookings requests per app and mailbox.
- The API doesn't cover Bookings with me.
See Does Microsoft Bookings have reports or a dashboard?
What Microsoft hasn't built#
The top idea in the Bookings Feedback Portal forum is "Bookings - Centralized Administration Needed", with 85 votes as of September 2026. It asks for exactly this: central management, reporting and maintenance across every page. Until something ships, PowerShell and Graph are the only admin-wide tools. To stop the number of pages growing, restrict who can create them.
Questions people also ask
Sources
- Microsoft Learn: Bookings faq (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Add staff (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Booking api overview (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Throttling limits (opens in a new tab) · learn.microsoft.com
- devblogs.microsoft.com: Application permissions for bookings apis in microsoft graph now available on v1 (opens in a new tab) · devblogs.microsoft.com