Hi @Cain, Joshua,
I hope you’re having a great day. I appreciate your patience and the details you provided.
A - What's happening
I’d like to clarify one important point up front so expectations are aligned: Microsoft Bookings does not currently offer a native feature to restrict a public booking page to only one external company or domain. Booking access is generally controlled at two levels either the page is accessible to anyone who has the link, or access is limited to authenticated users within your Microsoft 365 tenant.
B - Recommended workarounds
That said, there are a few practical approaches you can use, depending on how strict the restriction needs to be.
Option 1: Strict access control using Guest accounts (Recommended for strong enforcement)
If you require strict control so that only that external company can book appointments, the most reliable option is to require sign-in and onboard that company as guest users in your tenant. By enabling the “Require a Microsoft 365 account from my organization to book” option on the booking page, only users who can authenticate against your tenant will be able to access and book.
To do this, please go to Microsoft Bookings > select your shared booking page > Booking page > Configure booking page > set availability to “Available to people in your organization”
With this setting enabled, only users who can authenticate against your tenant will be able to access and book the page. You can then invite users from the external company as Entra ID (Azure AD) guest users. Once they accept the invitation and sign in, they will be able to book appointments, while all other external (public) users will be blocked.
This approach effectively creates a controlled “whitelist” limited to that partner company, although it does require onboarding and managing Guest user accounts.
Option 2: Public booking page with reduced exposure (No hard restriction)
If you prefer to keep the booking page public and avoid creating guest accounts, it’s important to note that Microsoft Bookings cannot technically enforce a “single external company only” rule. In this case, you can reduce exposure by disabling direct search engine indexing of the booking page, limiting social sharing options at the tenant level, and sharing the link only through tightly controlled channels such as direct emails to named contacts.
This approach helps reduce risk but does not provide hard enforcement anyone who obtains the link could still attempt to book.
About configuring appointments with multiple internal staff members
Regarding your requirement to include multiple staff members from your side in each appointment, Microsoft Bookings does support this. You can configure the service to use a multiple-staff setup by assigning all required staff members to the service. With this configuration, Bookings will only show time slots where all selected staff are available.
If you ever need more flexibility, such as one staff member being mandatory while others are optional, the usual workaround is to create separate services for each required staff combination.
For additional information, you can refer to these articles:
- Customize and publish your booking page | Microsoft Learn
- microsoft-365-docs/microsoft-365/bookings/service-types.md at public · MicrosoftDocs/microsoft-365-…
C - Submit Feedback to Microsoft
As a forum moderator, I hope you understand that I don’t have the ability to modify or escalate product issues directly. However, I strongly recommend submitting your feedback through the Bookings · Community. This is the most effective way to ensure your voice reaches the product team and can be considered for future improvements.
Once you've submitted your feedback, feel free to share the link here in the comments. I’ll be happy to upvote it to help bring more visibility.
If you are unable to submit feedback from your side, please let me know and I will be happy to submit it on your behalf.
Additionally, since many other users have expressed similar concerns but may not know where to submit feedback, if my response has helped you better understand the situation and guided you toward a possible next step, please mark it as the "Accepted Answer". Your action will help pin this post to the top, making it easier for others in the community who are experiencing the same issue to find your feedback and support it.
I hope this information is helpful. Should you have any further questions or need additional assistance, feel free to reach out.
Thank you again for your time and for raising this important usability concern.
If you have any extra questions about this answer, please click "Comment".
Note: Follow the steps in our documentation to enable email notifications if you want to receive email notifications related to this topic.