Answer · Notifications

How to get Microsoft Bookings notifications in Slack

Last updated 5 min read8 sources

The question people ask
“How do I get a Slack notification when someone books in Microsoft Bookings?”

Asked in stackoverflow.com (opens in a new tab), Microsoft Learn (opens in a new tab) and Microsoft Learn (opens in a new tab)

Short answer

Microsoft Bookings can't post to Slack on its own. As of October 2026 it has no Slack integration, no webhooks and no Zapier trigger, and Microsoft Graph change notifications don't cover Bookings. The workable routes are a Power Automate flow that uses the Bookings connector and Slack's Post message (V2) action, forwarding the Bookings notification email to a Slack channel's email address, or Slack's Outlook Calendar app for one person's own calendar.

What people have asked#

The question usually starts as "how do I get an event out of Bookings?". A 2021 Stack Overflow question asks for an event "FROM Bookings TO our App" when a new appointment is scheduled, so it can be passed on to Teams or a web app. Two Microsoft Q&A threads, from 2022 and 2023, ask for webhooks or Graph subscriptions on Bookings appointments, and Microsoft staff answered that Bookings resources aren't supported. Slack is just another destination, so the same limits apply. Does Bookings support webhooks? covers the event side in more depth.

Compare the three routes#

RouteWhat reaches SlackNeedsMain catch
Power Automate flowYour own message with customer, service, time and staffAdministrator role on the booking calendarPreview connector, 5 flows per booking mailbox
Email to a channelMicrosoft's notification email, as an email postA paid Slack plan; the business notification switched onFires on changes too; external forwarding is often blocked
Outlook Calendar appA calendar event notificationEach person connects their own calendarOne person's calendar only, no Bookings details

Route 1: Power Automate to Slack#

This route gives you a proper message with the fields you choose. Both connectors involved are Standard on Microsoft Learn, so the free Power Automate use that comes with a work account covers them; you don't need Premium.

  1. Open the booking calendar in Bookings, go to Staff, and check that your account has the Administrator role. The connector only lets Bookings administrators create appointment flows. Being a tenant admin doesn't count.
  2. In Power Automate, create an Automated cloud flow with the Microsoft Bookings trigger When a appointment is Created (that's Microsoft's spelling). Pick your booking page. If it isn't listed, choose Enter custom value and paste the page's SMTP address, which Bookings shows under Integrations → Power Automate.
  3. Add the Slack action Post message (V2) and sign in to Slack when asked. The old Post message action is deprecated.
  4. Set Channel Name to the channel, for example #bookings, and build Message Text from the trigger's dynamic content: CustomerName, CustomerEmail, ServiceName, StartTime, plus the staff member's DisplayName. StaffMembers is a list, so Power Automate may wrap the step in Apply to each; use the expression first(triggerBody()?['StaffMembers'])?['DisplayName'] to avoid that.
  5. Save, then make a real booking on the public booking page. Check the time format in the run history, and convert it with convertTimeZone() if it isn't in your local time.

Before you rely on it:

  • The Bookings connector is still Preview, and each booking mailbox allows five flows across all its admins. One Slack flow per page is usually fine; put any other actions into the same flow.
  • For group services, only the first attendee fires Created. Later attendees fire When an appointment is Updated.
  • It isn't available in GCC, GCC High, DoD or 21Vianet.
  • If the flow never runs, work through why the Bookings trigger isn't firing. The usual causes are the admin role, the SMTP address and the five-flow limit.

Route 2: forward the notification email to Slack#

This needs no flow, but you get Microsoft's email as-is.

  1. In Slack, open the channel, click its name in the header, open the Automations tab, choose Send emails to this channel, then Get Email Address. Slack says channel email addresses are only on paid plans, and workspace owners can stop members creating them.
  2. In Bookings, go to Booking page → Scheduling policy, tick Notify when a booking is created or changed, and select Save and publish.
  3. Microsoft says this email goes to "the mailbox specified on the Business information page". The only address field there is Send customer replies to, and customers' replies go to it too. Don't paste the Slack address into it. Point it at a mailbox you control, such as a shared mailbox, then add an Outlook inbox rule there that forwards these notifications to the Slack address.
  4. Make a test booking and check the channel.

Many Microsoft 365 tenants block automatic forwarding to outside addresses by default. If the forward bounces with 5.7.520 Access denied, an admin has to allow external forwarding for that mailbox in an outbound spam policy. Some admins won't, which leaves Route 1. Also expect a post for every change and cancellation, not only new bookings, because that's what the Bookings switch sends.

Route 3: Slack's Outlook Calendar app#

Bookings puts each appointment on the assigned staff member's Outlook calendar. Slack's Outlook Calendar app connects one person's Microsoft 365 calendar to Slack. It notifies them about invitations, updates and cancellations, and can also send notifications for a calendar to a channel, under the app's Settings → Channel Notifications.

That's fine for "tell me in Slack when I get booked". It doesn't make a team-wide booking feed. Each person connects only their own account's calendars, the notification is a calendar event rather than a Bookings record (no custom answers or service details), and Slack doesn't say whether a Bookings page's own calendar can be connected. Test it with your own bookings before you rely on it.

Doing this with BookingsXP#

If customers book through the BookingsXP widget on your website, the Pro plan can post each new booking to a Slack channel through a Slack incoming webhook (a hooks.slack.com URL). The message has a fixed layout: a headline, then Service, When, With, Source, Customer and Ref, so the channel also sees the campaign behind each booking. There's no Bookings admin role or flow limit involved. It needs Store bookings switched on for the widget, because the message includes the customer's name and email, and it pauses while Zero data retention is on. Limits: it covers only new bookings made through the widget, not bookings on the booking page Microsoft hosts or added by staff, and it doesn't post cancellations or reschedules. Failed posts are retried up to 8 times over about two hours. Each Slack channel uses one endpoint, with 5 on Pro and 25 on Business. Setup is on the Slack integration page and in the webhooks docs; plans are on pricing. BookingsXP is independent and not affiliated with or endorsed by Microsoft.

Questions people also ask

Sources

  1. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  2. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  3. Microsoft Learn: Power automate licensing (opens in a new tab) · learn.microsoft.com
  4. Microsoft Learn: Set scheduling policies (opens in a new tab) · learn.microsoft.com
  5. Microsoft Learn: Enter business information (opens in a new tab) · learn.microsoft.com
  6. Microsoft Learn: Outbound spam policies external email forwarding (opens in a new tab) · learn.microsoft.com
  7. slack.com: 206819278 Send emails to Slack (opens in a new tab) · slack.com
  8. slack.com: 360020134853 Microsoft Outlook Calendar for Slack (opens in a new tab) · slack.com