All Collections
Microsoft 365 and Google Workspace
Direct Integration with Microsoft 365/Google Workspace: Introduction and Configuration
Direct Integration with Microsoft 365/Google Workspace: Introduction and Configuration

Skedda offers a dedicated integration with Microsoft 365 and Google Workspace to sync events, including attendee and conferencing support!

Team Skedda avatar
Written by Team Skedda
Updated over a week ago

Please note: this article describes the one-way sync feature offered by Skedda. To find out more about our two-way sync feature, please see this article.

One of Skedda's most powerful features is its ability to tightly integrate with Microsoft 365 (MS365) and Google Workspace (GW).

Check out some more specifics in the FAQs section.

Please also see our additional articles on how to set up the direct integration with MS365 or GW, and more details on the design, rationale, and an example here.


The integration allows Skedda to work side-by-side with MS365 or GW calendars. Users can experience Skedda's specialized interfaces (floorplans/maps) and will still be forced to abide by your rules/conditions when making space bookings. They can also add attendees and conferencing to their bookings. Then Skedda will sync the booking to their MS365/GW calendar immediately with help from your "butler" user.

This feature is more powerful than our basic calendar syncing option (simple iCal feed) because of its immediate nature and the possibility of attendees and conferencing.

The direct integration is only possible if you manage your users with a MS365 or GW tenant, otherwise, the simple calendar sync feature is available.

Your "butler" user

Skedda creates and manages synced events in MS365/GW in a manner that ensures no changes can practically be made on the MS365/GW side. This is done by saying that an event should be read only to its attendees. So when Skedda creates synced events on the MS365/GW side, they're created in the calendar of what we'll call your "butler" user.

The name "butler" is arbitrary, and you're free to use any other name you want. The key point is that it's a user account you create on your MS365/GW tenant that gives us a calendar where nobody is able to make edits. The Skedda booking holder, as well as any other attendees added to the booking on the Skedda side, are then all added as attendees in the butler's synced event on the MS365/GW side. This ensures that nobody, not even the Skedda booking holder, is able to make changes to the event on the MS365/GW side.

Sync Rules

Skedda allows the Owner and System Admins to control the extent to which sync is offered using sync rules. This part of the feature is extremely useful because the necessity for sync often varies based on the space being booked. Here's a screenshot showing four real sync rules from Skedda:

Rule 1 is for a conference room designed for many people, so the concepts of attendees and virtual conferencing are relevant. For this reason, it was decided that bookings for it should sync to MS365/GW by default. This is what the "offer opt-out sync" part is saying, i.e. by default it will be synced but the user can opt out of it during the booking process. Additionally, it was decided that the ability to add attendees and a conferencing link should be available to the user when booking.

Rule 2 is structured differently because it's for desks. The rule states that bookings for desks shouldn't sync by default, but the booking holder can opt-in to sync if they really want it on their MS365/GW calendar. The rule also ensures that attendees and conferencing are never offered to the holder when they book, because these concepts aren't relevant for desks and they'd only clutter the desk-booking process unnecessarily.

Rule 3 is for the Relaxation pod. It can only ever be booked at short notice (because they set up a window rule to that end). There isn't any point in having such short-notice bookings sync to the booking holder's MS365/GW calendar, so never sync is chosen. This means that the sync option isn't shown at all during the booking process.

Rule 4 is for a hall and sync will always be useful for its bookings. The "always sync" option is therefore chosen (i.e. the option to turn off sync isn't available in the booking process).

Hopefully, these examples have demonstrated just how useful sync rules are: They allow you to make the booking process smoother for your users by customizing the sync offering and defaults based on the space(s) being booked.

Some useful notes on sync rules:

  • For a given booking, the first matching sync rule is used (based on its spaces). If no rules match, sync is not offered and won't occur for the booking.

  • Given the point above, it should be clear that you need to set up at least one sync rule for the sync feature to be useful at all. That is, if you have no sync rules set up, no bookings will ever see an option to sync. If you want sync to always be available, just set up a single rule for all your spaces.

  • Sync rules can be reordered (just click on the rule number to see the options), which helps you to prioritize them. Generally speaking, specific rules should be at the top of the list, and general ("catch-all") rules at the bottom.

  • Once an individual booking is created, its sync behavior is "set in stone" and can't be changed via rules afterward. That is if you have a single rule for "always sync" and you then create a booking, you can't then cause the existing booking to stop syncing by deleting the sync rule. This design is desirable, otherwise it would be very "dangerous" to change sync rules. That is, with this design, the Owner and System Admins are free to change sync rules as they wish, knowing that the changes only affect new bookings from that point onwards. You can however completely disable sync "globally" if you want.


Do I need multiple butlers?

In most scenarios, a single butler is sufficient. The only potential danger with having a single butler is that certain limits of its tenant account (managed on MS365/GW) may be reached. These may include storage limits associated with mailboxes and calendars (typically measured in gigabytes), but also "rate limits" associated with the rate at which events are created on its calendar. The limits imposed by MS365 and GW are rather generous in this respect, but if you expect "large scale usage" of the integration (potentially up to some "hundreds" of requests per minute, which at peak times might occur if you're syncing desk bookings in addition to room bookings), then it can't hurt to add a second butler. Skedda supports up to 5 butler accounts, although we almost never expect that many to be required. Additional butlers can be easily added (and old ones removed) in the feature's configuration, so we generally recommend starting with one.

If you do decide to use multiple butlers, Skedda will evenly distribute events across them to share the load.

I've encountered the "Error while validating [your domain]: Access to OData is disabled" error - what do I do?

To correct this issue, please ask one of your Microsoft admins to run the following Powershell command (one of the ExchangePowerShell cmdlets) to see if any application access policies exist that are preventing Skedda from validating your domain:

Get-ApplicationAccessPolicy | Format-Table -Auto Identity,Description,ScopeName,AccessRight

This will help in diagnosing if there are any access policies that need to be removed or adjusted. If there are any policies that are returned in the results you see, please remove or modify the policy to allow Skedda to complete the validation process for your domain.

If you have any questions before you perform this action, please reach out to our Support Team and we'll assist where we can!

Can I temporarily disable all sync behavior?

Yes, there are a few ways you can do this:

  • If you want to disable sync completely, go to Settings > Microsoft 365 / Google Workspace in Skedda, click on the option to edit the configuration, choose "None" for the provider, and save. All sync activity for all bookings will then cease and Skedda will stop "talking" to your provider. Note that the other aspects of your sync config are "remembered" for convenience, so you'll see it all correctly repopulate (including sync rules) if you re-enable the feature (by selecting your provider again). That is, it's easy to re-enable it if you decide to temporarily turn it off.

  • If you want to disable it just for new bookings (keeping the sync behavior of existing bookings), you can modify your sync rules so that they all say "never sync". When you're ready to re-enable sync for new bookings, you can reverse those changes to your sync rules.

We have specialized resources like projectors and physical conference phones configured in our MS365/GW tenant. Can these be added to bookings created in Skedda?

This is fully supported in MS365: The resources are searchable (in the Attendees dropdown) and can be added to a booking in Skedda.

The GW case is however not supported at this time. Please contact our team if you wish to vote for this enhancement in GW!

How are user photos synced?

We have a dedicated support document on user photos that discusses this and related questions, see here.

Can I use this integration if I have an SSO provider other than Microsoft Azure or Google Workspace (ex. Okta, Jumpcloud, etc.)

Yes! You don't need to set up SSO in Skedda with Google Workspace or Microsoft Azure to be able to use this feature. You just need to have a Google Workspace or MS 365 account where you manage your users.

Did this answer your question?