Book a workspace in Outlook
Published Jul 20 2020 04:02 PM 304K Views

Update - May 11, 2021: Updated with floor plan information.

Imagine you could book an office to work anywhere in the world. Now imagine this could be done in Outlook. Well, we have built a feature to let you do that! We have built this in Outlook for Windows, Mobile, Mac and Outlook on the web users with Exchange Online mailboxes.

In the image below you can see the room finder has a new ‘type’ drop down. In the drop down you would be able to select workspace or conference room. Here’s what users can expect to see in Outlook for Windows:

workspace01.jpgThe same rich capability in Outlook on the web:

workspace02.jpg

And for those cool kids with a Mac, the same great experience. No matter what client your users choose, they can use this feature just the same:

workspace03.jpg

If you have an Android phone go to your calendar settings and enable ‘workspace booking’:

workspace_mobile01.jpg

On your iOS phone go to your calendar settings and enable ‘workspace booking’:

workspace_mobile02.jpg

Outlook on mobile web experience:

OutlookMobileWeb.jpg

NEW! You can now add floor plans to your workspaces in Outlook mobile using Microsoft search. See Manage floor plans for more information.

floorplans.jpg

What is a workspace?

A workspace is a physical location where employees can work from. It can be made up of many desks or can be a single desk. The way you book a workspace is very similar to how you book a conference room in Outlook. The same policies that can apply for a conference room can also apply for a workspace.

The main difference with workspaces is that they have a capacity and a minimum booking duration requirement. Workspaces can be booked by the number of people that the capacity was set for. Capacity refers to the total capacity of the workspace. For example, if a workspace has 10 desks but has been already booked to 50% capacity, only 5 people can book that workspace for a specific time period. If the 11th person tries to book the same workspace, it will be shown as unavailable and they will receive an automatic decline.

How do your users book a workspace?

  1. Open the Outlook calendar and create a “new event”. A minimum duration of 3 hours is needed for workspace booking. We recommend booking a workspace as an all-day event.
  2. Set the “Show as” status to “Free” so the invite doesn’t block your calendar.
  3. Open the “Room finder” by selecting the location input and then “Browse with Room Finder”.
  4. Select your building from the drop-down and “Workspace” option from the “Type” drop-down. If you don’t see a workspace option, then your building may not have workspaces (or they have not been defined yet - see below for how to do that).
  5. Browse available workspaces. Availability is shown based on if there is at least one available space for the duration of this booking.
  6. Save the event and then the user will get the auto-generated email confirming the booking:

workspace04.jpg

Note: Additional attendees can be added to an invite and a seat will be reserved for them if available. If the number of additional attendees added to the invite exceeds the number of available seats, then the booking will be rejected.

How do you create a workspace?

Configuring a workspace is very similar to how you would configure a conference room. The key to defining a room mailbox as the workspace is setting the mailbox type.

Step 1: Create a new mailbox as a space using New-Mailbox

New-Mailbox -Room {alias} | Set-Mailbox -Type Workspace

Wait up to 24 hours before proceeding (to ensure the new mailbox is fully provisioned).

Step 2: Add required metadata using Set-Place. In hybrid environments, this cmdlet doesn't work on the following properties on synchronized room mailboxes: City, CountryOrRegion, GeoCoordinates, Phone, PostalCode, State, and Street. To modify these properties on synchronized room mailboxes, use the Set-User or Set-Mailbox cmdlets in on-premises Exchange.

  • Capacity
  • Street
  • City
  • State
  • Postal code
  • CountryOrRegion
  • GeoCoordinates
  • Floor

Step 3: Add workspace to an appropriate roomlist (distribution group) so the workspace shows up in a particular building, for example.

Add-DistributionGroupMember -Identity "Building 32" -Member wkspace3223@contoso.com

Step 4: Enforce capacity for workspaces based on set capacity value & Update minimum duration for booking workspace

Set-CalendarProcessing {alias} -EnforceCapacity $True -MinimumDurationInMinutes {int32}

Note: Distribution groups or lists cannot be added to the booking request. Individual people can be added, and workspace bookings will count the capacity of all attendees on the request. Please note it may take up to 24 hours for workspaces and new room list to appear in the room finder.

Summary

Workspaces in Outlook on the web and Outlook mobile (iOS & Android) is rolling out to all Office 365 commercial users in multi-tenant environments now and will be complete in a week. Outlook for Mac is available to all Insider Fast users using the new Outlook for Mac. The new room finder that offers workspace booking in Outlook for Windows is rolling out to Monthly Channel subscription customers. Semi-annual channel roll out will start in July 2021.

Note: for those customers who used CustomAttribute11 (from our initial release) please make sure to update your workspaces to use –Type Workspace.

Please, tell us what you think in the comments below, in our UserVoice channel or using the in-product smile feature.

Thank you!

Victoria Rodriguez

137 Comments
Brass Contributor

Hi,

 

wow - that is fixed to "CustomAttribute11"?

What do customers do when this attribute is already in use?

 

BTW: Before building that solution it would be great to have resources like Beamer, Cars etc. as a Type too and make it easier to book such resources. But please do not use CustomAttributes. Custom Attributes have many letters from "Customer" included. So the manufacturer should not use them. Otherwise they would be called "ManufacturerAttributes"

Steel Contributor

This is good. I had originally looked at using Microsoft Bookings for this but it's really not designed for it.

 

As part of our Covid management we have three things

 

1) Number of people on the floor of the building will be limited

2) Number of people in a shared office space will be limited

3) Our facilities company need to be aware of what floors and offices are in use each day so that they can be cleaned in the evening.

 

It would be great if we could connect or limit office space by number of people on floor. I could probably use Power Automate for item 3 but again, would be great if that could be linked too. I imagine most companies would be doing similar in offices?

 

Edit: would agree that using the customattribute is unfortunate. 

Steel Contributor

Great feature - can see a lot of useful scenarios (for example, where a pool of equipment like laptops exist, but we don't want to create an individual resource for each piece of equipment).

 

However @Peter Forster is completely correct - you shouldn't be using CustomAttribute11 for this purpose.

 

Here's the promise you made to customers about these attributes since they first existed, stating that you won't use them in Exchange attributes (emphasis mine):

 

'The custom attributes available to Exchange Server are labeled in Active Directory as ms-Exch-Extension-Attribute1 through ms-Exch-Extension-Attribute15. In the Exchange Management Shell, the corresponding parameters are CustomAttribute1 through CustomAttribute15. These attributes aren't used by any Exchange components. They can be used to store Active Directory data without having to extend the Active Directory schema.'

 

You've even got the custom attributes 16-45 that we were told not to use, since they might be used in future versions:

 

'ms-Exch-Extension-Attribute-16 to ms-Exch-Extension-Attribute-45 are present in Active Directory, but aren't available in the Exchange admin center (EAC) or the Exchange Management Shell. Don't use non-Exchange tools to edit these attributes because they might be used for future Exchange features.'

 

Who on earth decided to re-purpose an attribute that for years we have been promised would not be used by Exchange components, instead of creating a new attribute (or at least using one of the ones that we were told might be used by Exchange features)?

 

https://docs.microsoft.com/en-us/Exchange/recipients/mailbox-custom-attributes?view=exchserver-2019

Iron Contributor

Neat new feature. But I have to agree with David and Peter: The usage of the CustomAttribute for this is weird. Why did you not implement a new Attribute or extended a non-custom attribute?

Steel Contributor

Hey,

 

This is a really helpful feature, and I can see lots of other uses (like a pool of laptops where you don't want to create an equipment mailbox for each piece of equipment, but can book them out all through one resource.

 

Have to agree with @Peter Forster and @diecknet though - this should be in a new attribute, not in CustomAttribute11

 

Here's the promise you've made in the Exchange documentation about CustomAtrribute1 to 15 (emphasis mine):

 

The custom attributes available to Exchange Server are labeled in Active Directory as ms-Exch-Extension-Attribute1 through ms-Exch-Extension-Attribute15. In the Exchange Management Shell, the corresponding parameters are CustomAttribute1 through CustomAttribute15. These attributes aren't used by any Exchange components. They can be used to store Active Directory data without having to extend the Active Directory schema.

 

This should be a new attribute, or at the very least you should be using CustomAttribute16 to 45, which the documentation indicates might be used in future:

 

ms-Exch-Extension-Attribute-16 to ms-Exch-Extension-Attribute-45 are present in Active Directory, but aren't available in the Exchange admin center (EAC) or the Exchange Management Shell. Don't use non-Exchange tools to edit these attributes because they might be used for future Exchange features.

 

Don't break the promises you've been making to users for such a long time. You shouldn't be using CustomAttribute1 to CustomAttribute15 for any internal purposes.

 

https://docs.microsoft.com/en-us/Exchange/recipients/mailbox-custom-attributes?view=exchserver-2019

Steel Contributor

Also here:

 

'Microsoft Exchange Server 2013 includes 15 extension attributes. You can use these attributes to add information about a recipient, such as an employee ID, organizational unit (OU), or some other custom value for which there isn't an existing attribute. These custom attributes are labeled in Active Directory as ms-Exch-Extension-Attribute1 through ms-Exch-Extension-Attribute15. In the Exchange Management Shell, the corresponding parameters are CustomAttribute1 through CustomAttribute15. These attributes aren't used by any Exchange components. They can be used to store Active Directory data without having to extend the Active Directory schema.'


https://docs.microsoft.com/en-us/exchange/custom-attributes-exchange-2013-help

 

And on this very blog itself:

 

'For a while now, Exchange provides 15 custom attributes. Those are still there and you are free to use them as you used them before. They are known as CustomAttribute1 to 15 (or can also be referred to as ms-Exch-Extension-Attribute1 to 15). For more on those, please see this. So nothing has changed with those.

 

...

 

New! Finally, we have also added ms-Exch-Extension-Attribute-16 to 45. Those are not exposed to various CMDlets and Exchange management UI, because they were added for future use. As such, we cannot recommend that you use non-Exchange tools to edit their values (Exchange 2010 SP2 or any later version) because we might use those attributes in the future for various Exchange features. If and when we add management tools access to them, we will definitely let you know!'

 

https://techcommunity.microsoft.com/t5/exchange-team-blog/custom-aka-extension-attributes-in-exchang...

Brass Contributor

Good Morning, 

 

CustomAttribute11 doesn't appear to work for me:

Capture.JPG

Can anyone point out what I'm doing incorrectly? Many thanks!

Brass Contributor

What about adding some "intelligence" into Outlook and Outlook on the web? For years we were requesting that Outlook takes the "Capacity" of rooms into consideration when booking a room. So for example: I book a room for a meeting (or a workspace...) and add 6 people to the meeting. However the room I booked, has only a capacity of four. Outlook/Outlook on the web should notify the user about this. Or even offer only rooms with a capacity that fit all people. Notes/Domino btw. does this since decades... Christian

Brass Contributor

You can't win with us IT guys, can you Victoria? :lol:

 

Thanks for giving us a workaround for these crazy times. A few design change requests of my own:

 

  1. Our Facilities team would like to have single occupancy rooms available to be booked but only for a certain period and only for one person. E.g. The room is available 8AM-11:30AM. If a person books the room any time (let's say 9:11AM), the room needs to be scheduled from 9:11AM-11:30AM. This is to ensure people's safety as they are allowed to remove masks in the room, and air is circulated only a few times a day. Right now I don't think there's a native way in Outlook to do this.
  2. @Christian Schindler they're part of the way there. In room lists in OWA you can limit your meeting to only include rooms with a specific capacity. But I agree, warning users about cramped rooms would be a benefit.
  3. Pictures/maps/3D visuals of the room. At a minimum, allow admins to control if end users can upload pics of the room. Could prompt the users to upload when they are in a meeting in that room.
Brass Contributor

It's New-Mailbox Alias -Room & Set-Mailbox -CustomAttribute11 "space"?

Brass Contributor

I agree with the other comments, thanks for rolling out new features but please change so this does not rely on any custom attributes.  Custom Attributes should be maintained at the tenant level for a process particular to that business.  We already use Custom Attribute 11 for another purpose.

Microsoft

Hi folks,

We hear you loud and clear! We will update this article once we implement a different property to set workspaces. We will most likely use recipient type details field that can be set on a mailbox. Please comment if you have any feedback. Thank you!

Copper Contributor

Excelente plataforma de trabajo

Steel Contributor

@vrod29 Thanks for that! If there's anyway we could display a summary of booked workspaces for the day/week etc that would be great too.

@JustAnotherITGuy - regarding your point 3above, floor plans are part of Microsoft Search - https://docs.microsoft.com/en-us/microsoftsearch/floorplans-bestpractices

 

Copper Contributor

Would it possible to set the "show as" free when chossing a space to prevent people from having to manually do it.

 

Thanks

Copper Contributor

Thank you, agree, useful feature especially for the current circumstances. Our facilities strategy for maintaining social distance has been to allocate a % of spaces to each group. Say my group had 30 spaces on 12th floor, I now get 15 spaces. I would not want to make this workspace available to all. Would there be a way to limit Workspace to an AD/O365 group?

Copper Contributor

I would look at this to replace some Bookings functionality also, but the time period needs to be less than 3 hours, at least down to 1 hour but preferably can be customized.

Brass Contributor

>For example, if a workspace has 10 desks but has been already booked to 50% capacity, only 5 people can book that workspace for a specific time period<

 

Only 5 additional people, right?

Copper Contributor

Great feature that can't come fast enough.  Looking forward to seeing it in production. 

Copper Contributor

@Darren O'Leary I had the same issue. What worked for me was creating the room mailbox first and then using Set-Mailbox -CustomAttribute11 "space" to set CA11.

Copper Contributor

This is exactly the type of features we need for our remote employees who need to reserve a "hotel" cube while on site.  Now my regular question with Microsoft....How long will it take for my GCC tenet will see this?  As an organization we are waiting for both Booking and this feature for Exchange.  

Roll this out to the GCC at the same time as the consumer environment.

Copper Contributor

First of all where did you get CustomAttribute11 from this post?  Just curious.  Is there any other documentation on this yet.  I created a couple Hotel spaces and added the CU11 "space" value, then added some other set-place attributes.  I also created another room list containing these two workspaces.  However, I don't get any listings when I select the Workspace type in room finder.  Am I missing something?

@pmattias the feature was released using CustomAttribute11 but was pulled shortly after and will come back using RecipientType. Watch out here for updates I guess 

Brass Contributor

Nice. Can you please add to the blog -  how to use the new feature through Powershell ? 

Copper Contributor

few member are discussing about custom attribute? where is this details? I am unable to find any detail about use of custom attribute in this blog. 
is there any more document available?

also where are steps to configure workspace.

Copper Contributor

@Brian Reid, using search to locate rooms is interesting, but I don't see in the documentation you can book the meeting room (or the workspace) from Search.

 

Would you say a user need to go to Search to find a workspace reference and the go to Outlook to book the workspace (if it is available) ?

Copper Contributor

Hi all,

 

Very much looking forward to testing this. Any idea already when this will become available for general use?

 

Thanks in advance.

 

Remco

Copper Contributor

Excellent feature but when will the update be released without the use of CustomAttribute11?

 

Luke

Copper Contributor

Really useful feature. Any idea when this will be available? I've managed to set it up, but doesn't take into account the number of people who have already booked the workspace...

 

 

Copper Contributor

This feature would really simplify some of the work of reopening offices and labs as Covid positive rates in an area decrease. It's been six and a half weeks since the "re-evaluating the method" update was added. Can @The_Exchange_Team re-update the blog post with some guidance to organizations make plans and manage expectations? While providing a release date would be great, a "not  before" date would also be a big help. (If the "not before" is October 1, I might wait for it. If the "not before" is January 1, I need to make alternate plans.) Thanks and good luck. 

Brass Contributor

Completely agree with @KenB - As a Education Sector organisation, we were hoping to use this feature for the new School term in September. An update would be greatly appreciated, with the necessary detail on how this works/what to expect from both the admin/user perspective. Thank you!

Copper Contributor

I agree with kblackney and Darren above. Would love an update on this, or we will purchase a hot desking system.

Thank you

Copper Contributor

@vrod29 Is there any chance of an update on this please? This is a really important new feature for a lot of us!

Many thanks,

Geraint

Copper Contributor

I'm a bit late to the party on this one, but and update does seem overdue here? Pretty sure many people here are facing the CV19 desk booking scenario that could do with a simple solution.

Copper Contributor

I agree with @KenB. Looking forward to an expected release date. 

Microsoft

Sorry folks for the overdue update here. It was a big change we had to make that took a bit. We have updated the blog post. Please post any questions/feedback.

Copper Contributor

@vrod29, this is great. We all appreciate the effort to re-build this in the current environment. Thank the larger team for all of us on the outside.

Brass Contributor

@vrod29 Thank you for your work on this. 

 

I have a question RE: Step 3. Apologies I'm not a PowerShell expert.

 

I have 3 rooms, all in the same building ("Tredomen Gateway"), and I've now converted them to -Type Workspace. 

I've then set the parameters for these rooms, which I believe was successful. 

 

I've then run the following:

 

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.hotdesk.office@contoso.org.uk

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.main.office@contoso.org.uk

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.smt.office@contoso.org.uk 

 

It's my understanding of Step 3 that the above commands would link these 3 room mailboxes to the Building "Tredomen Gateway". However I see the following error:

 

Capture.JPG

 

Can anyone advise please? 

 

Many thanks!

Copper Contributor

@vrod29 We're testing the new Workspace type and see that there's could be a bug in this booking scenario. Could you please review and let us know if we're doing something wrong or that's really a bug.

Setup
1. Set-Place -Identity 'Workspace_A@mycompay.onmicrosoft.com' -Building "Building" -Floor 5 -FloorLabel "Floor" -City "City" -CountryOrRegion "US" -Capacity 50

1. Workspace_A: Set-CalendarProcessing -Identity 'Workspace_A@mycompay.onmicrosoft.com' -EnforceCapacity $True -MinimumDurationInMinutes 180

Steps:

1. From Outlook, create Meeting_1, invite 19 attendees, use RoomFinder to add Workspace_A. Meeting_1 start time: 8:00 AM, end time: 11:00 AM
2. From Outlook, create Meeting_2, invite 19 attendees, use RoomFinder to add Workspace_A. Meeting_2 start time: 3:00 PM, end time: 6:00 PM
3. From Outlook, create Meeting_3, invite 9 attendees, use RoomFinder to add Workspace_A. Meeting_3 start time: 8:00 AM, end time: 6:00 PM

4. From Outlook, create Meeting_4, invite 9 attendees, use RoomFinder to add Workspace_A. Meeting_4 start time: 11:15 AM, end time: 2:15 PM

Results:

1. Meeting_1 is accepted by Workspace_A, remaining capacity = 30

2. Meeting_2 is accepted by Workspace_A, remaining capacity = 30

3. Meeting_3 is accepted by Workspace_A, remaining capacity = 0

4. Meeting_4 is declined by Workspace_A due to: Your request was declined because there are conflicts. (nothing about capacity is mentioned in the message)

Expectations:

Meeting_4 is accepted by Workspace_A, remaining capacity = 20

Notes:

If we redo the steps in this order: 3-2-1-4 then Meeting_4 from step 4 is accepted, which is exactly our expectation.

 

Many thanks!

Copper Contributor

@vrod29 We're testing the new Workspace type and see that there's could be a bug in this booking scenario. Could you please review and let us know if we're doing something wrong or that's really a bug.

Setup
1. Set-Place -Identity 'Workspace_A@mycompay.onmicrosoft.com' -Building "Building" -Floor 5 -FloorLabel "Floor" -City "City" -CountryOrRegion "US" -Capacity 50

1. Workspace_A: Set-CalendarProcessing -Identity 'Workspace_A@mycompay.onmicrosoft.com' -EnforceCapacity $True -MinimumDurationInMinutes 180

Steps:

1. From Outlook, create Meeting_1, invite 19 attendees, use RoomFinder to add Workspace_A. Meeting_1 start time: 8:00 AM, end time: 11:00 AM
2. From Outlook, create Meeting_2, invite 19 attendees, use RoomFinder to add Workspace_A. Meeting_2 start time: 3:00 PM, end time: 6:00 PM
3. From Outlook, create Meeting_3, invite 9 attendees, use RoomFinder to add Workspace_A. Meeting_3 start time: 8:00 AM, end time: 6:00 PM

4. From Outlook, create Meeting_4, invite 9 attendees, use RoomFinder to add Workspace_A. Meeting_3 start time: 11:15 AM, end time: 2:15 PM

Results:

1. Meeting_1 is accepted by Workspace_A, remaining capacity = 30

2. Meeting_2 is accepted by Workspace_A, remaining capacity = 30

3. Meeting_3 is accepted by Workspace_A, remaining capacity = 0

4. Meeting_4 is declined by Workspace_A due to: Your request was declined because there are conflicts. (nothing about capacity is mentioned in the message)

Expectations:

Meeting_4 is accepted by Workspace_A, remaining capacity = 20

Notes:

If we redo the steps in this order: 3-2-1-4 then Meeting_4 from step 4 is accepted, which is exactly our expectation.

 

Many thanks!

Brass Contributor

 No I hadn't - sorry PowerShell isn't my forte. I've created the DG based on your code, and added the rooms - will check shortly to see if they've been added. 

 

Many, many thanks! :)

Brass Contributor

Is there some way to retrieve the currently reserved capacity of the workspaces via PowerShell? To create some kind of overview of how many people are in a building?

Steel Contributor

Kinda the same question as before but ... can we also retrieve the names that already booked?

Would be great if it says

 

Successfully booked. 4 places remaining. 3 booked.

You will meet name, name, name. How about schedule lunch with them? (Opens teams chat ;) )

 

 

Brass Contributor

Can anyone assist please?

 

I created a Building, via:

 

New-DistributionGroup -Name "Tredomen Gateway" -RoomList

 

I then added three rooms, via:

 

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.hotdesk.office@*****.org.uk

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.main.office@*****.org.uk

Add-DistributionGroupMember -Identity "Tredomen Gateway" -Member gateway.smt.office@*****.org.uk

 

This was 48 hours ago, and this building is not available:

 

Capture.JPG

 

Many thanks,

 

Darren

@Darren O'Leary In Outlook cached mode, address book can take 48 hours to update. What do you see in the web app OWA as that is more up to date. 

Brass Contributor

Hi @Brian Reid - that screenshot is from OWA. 

 

I've just checked Outlook 2016 and the Building is present:

 

Capture.JPG

@Darren O'Leary did you add a City via Set-Place or Set-User cmdlet? You did not list that above. The OWA room picker requires a city or a building value to be set

Brass Contributor

I thought I'd set the City variable @Brian Reid, but I reran the the code and no settings were changed, so I assume these are stored successfully. I then used 'Get-Place' but this doesn't show this variable?

 

Thank you for your help!

 

Capture.JPG

Brass Contributor

Please provide better instructions.

  • Give examples instead of just linking to a PowerShell page like in Step 2. 
  • Why is Step 3 necessary and what does that accomplish?

It would also be helpful to create a support.microsoft.com article I could send my user on using this functionality instead of this page.

 

Co-Authors
Version history
Last update:
‎May 11 2021 05:43 AM
Updated by: