Manage Room Mailbox by using PowerShell | Office 365 5/5 (2) 6 min read

In the current article, we will review how to use PowerShell commands for managing Room mailbox in Exchange Online environment.

PowerShell | Help & additional information

Running PowerShell commands in Office 365 based environment
To be able to run the PowerShell commands specified in the current article, you will need to create a remote PowerShell with Azure Active Directory or Exchange Online. In case that you need help with the process of creating a Remote PowerShell session, you can use the links on the bottom of the Article.

Resource Mailbox is a special type or a Mailbox that uses for the management of Meeting Rooms and Equipment.
The Resource Mailbox doesn’t require a license.
Management of Resource Mailbox could implement by using one of the following options:

  1. Self-management – the Resource Mailbox will be configured for automation of accepting meeting requests (or decline meeting request if a previous meeting request already set).
  2. Resource Mailbox Delegate – The delegate is the person that will accept the meeting requests and approve or decline the meeting requests.

The term “resource Mailbox” includes two types of Mailboxes – Room Mailbox and Equipment Mailbox.

There is a small difference between the two types of the resource mailbox but the use, and the purpose is quite similar (most of the examples will relate to room Mailbox).

A little confession – I must admit that it wasn’t easy to give up the strong need for naming these articles: Get a Room!
(But I know that this is a “serious” WebSite and, for this reason, I use a formal name).


1. Creating Resource Mailbox

Creating Room (Resource) Mailbox

PowerShell command syntax

PowerShell command Example

Create new Equipment Mailbox

PowerShell command syntax

PowerShell command Example


2. Room Mailbox Management

Booking options: Enable Automatic Booking for a Room Mailbox

PowerShell command syntax

PowerShell command Example

Booking options: Enable Automatic Booking for all Resource Mailbox (Bulk Mode)

PowerShell command Example

Booking options: Assign approving delegate (Room Mailbox Calendar)

PowerShell command syntax

PowerShell command Example

Assign Room Mailbox Manager Full Access permission

PowerShell command syntax

PowerShell command Example

Assign Room Mailbox Manager -Assigning Send As permission

PowerShell command syntax

PowerShell command Example

Set the default permission of Calendar to: Publishing Editor

PowerShell command syntax

PowerShell command Example

Allow conflict meetings when using the option of Automatic Booking

PowerShell command syntax

PowerShell command Example


3. Display Information about Room Mailbox

Display list of Room Mailboxes

PowerShell command Example

Display list of Equipment Mailboxes

PowerShell command Example

Display Room Mailbox Calendar Settings

PowerShell command syntax

PowerShell command Example

Display Room MailBox : Calendar Processing Settings

PowerShell command syntax

PowerShell command Example

Display Room Mailbox Permissions: Moderated By

PowerShell command syntax

PowerShell command Example

Display Room Mailbox : Calendar Permission

PowerShell command syntax

PowerShell command Example


4. General settings for Resource Mailbox

Set the Room Calendar to show the ‘Organizer’ and ‘Subject’ of the meeting

PowerShell command syntax

PowerShell command Example

Set the Room Calendar to show ‘limited details’

PowerShell command syntax

PowerShell command Example

Configure Booking Window In Days

PowerShell command syntax

PowerShell command Example

Display “Booking Window In Days” Settings of a Room Mailbox

PowerShell command syntax

PowerShell command Example

Create a new Room list

PowerShell command syntax

PowerShell command Example


5. Convert Mailbox

Convert Regular Mailbox to Room Mailbox

PowerShell command syntax

PowerShell command Example

Convert Room Mailbox to Regular Mailbox

PowerShell command syntax

PowerShell command Example

6. Download Room mailbox PowerShell menu script

For your convenience, I have “Wrapped” all the PowerShell commands that were reviewed in the article,
in a “Menu Based” PowerShell Script.

You are welcome to download the PowerShell script and use it.
Download -o365info PowerShell Script

Manage Room Mailbox by using PowerShell | Office 365


Getting started with Office 365 PowerShell

PowerShell Naming Conventions & general information
Get more information about the Naming Conventions that are used in the PowerShell articles – Help and additional information – o365info.com PowerShell articles
Creating a remote PowerShell session to Exchange Online 
To get more information about the required remote PowerShell commands that you need to use for connecting to Exchange Online, read the following article:
Connect to Exchange Online by using Remote PowerShell
Creating a remote PowerShell session to Azure Active Directory
To get more information about the required software component + the remote PowerShell commands that you need to use for connecting Azure Active Directory, read the following article: Part 2: Connect to Office 365 by using Remote PowerShell
Basic introduction to PowerShell in Office 365 based environment
If you are new in the PowerShell world, you can read more information about how to start working with PowerShell in Office 365 based environment in the following article series:  Getting started with Office 365 PowerShell – Part 1, Part 2, Part 3.
Running and using o365info PowerShell scripts
In case that you need more information about how to use the o365info PowerShell scripts that I add to the PowerShell articles, you can read the article – How to run and use o365info PowerShell menu script

PowerShell command syntax – Office 365 | Article series index

Now it’s Your Turn!
It is important for us to know your opinion on this article


Print Friendly, PDF & Email

Related Post

Please rate this

Eyal Doron on EmailEyal Doron on FacebookEyal Doron on GoogleEyal Doron on LinkedinEyal Doron on PinterestEyal Doron on RssEyal Doron on TwitterEyal Doron on WordpressEyal Doron on Youtube
Eyal Doron
Share your knowledge.
It’s a way to achieve immortality.
Dalai Lama

16 Responses to “Manage Room Mailbox by using PowerShell | Office 365”

  1. We create a Security Group and assign that group to be the resource Delegate, this allows the group owner to select the delegates. The group has “FullAccess” to the resource; the group has “Reviewer” access to the /Calendar:
    Add-MailboxPermission -Identity Resource_Name
    -AccessRights FullAccess

    -User Security_Group

    Add-MailboxFolderPermission -Identity Resource_Name:Calendar
    -AccessRights Reviewer

    -User Security_Group

    The use of security groups gives greater flexibility for resource management. For some resources, our default of “Reviewer” may be insufficient; the delegates may change this via Outlook (or contact us).

  2. As far as I know , the issue of “converting an existing Distribution Group to a security group” is not enabled in office 365 ( Exchange online)
    The only option to set Distribution Group also as a “Security Group” is when you create a new Distribution Group.
    To set a Distribution Group also as a security group you can use one of the following options:
    1. Exchange online Web Interface
    when you create a new Distribution Group chooses the check box: “Make this group a security group”
    2. PowerShell
    For example: New-DistributionGroup -Name “Office Users” -Type “Security”
    If you want to be sure that this option is not enabled, you can try to use the following PowerShell command
    Set-DistributionGroup -name “Office Users” -Type “Security”
    You will get the following error
    “A parameter cannot be found that matches parameter name ‘Type’”

  3. Don’t you have to set the send and receive quota to 250MB because that is a service limit to have a free conference room right?

  4. Don’t you have to set the sendrecive quota to 250mb on the room mailbox to ensure you don’t go over the free service limit restriction?

  5. I am glad I found this Article. I have been looking for a ps command that I can use so that people can see who booked a conference room and the subject.

  6. i need to add a user to a room mailbox.
    I tried running this code

    Add-RecipientPermission “Room mailbox (4)” -Trustee “Sidey” -AccessRights SendAs -Confirm:$False

    Give me error “Error
    term ‘Add-RecipientPermission’ is not recognized as the name of a cmdlet, function, script file, or operable progra
    heck the spelling of the name, or if a path was included, verify that the path is correct and try again.”

    I am an admin
    Currently using exchange 2010
    Please advise

  7. Hey, Awesome script & site!

    I am tasked with trying to come up with a report for conf rooms to show the utilisation, can anyone offer some assistance on how to get that information?

  8. Garry Santos Reply

    I need to rename a room resource. How can I do that without deleting all existing reservation.

    • The Room can be renamed and the bookings will stay in place, but the organizers calendar will not update nor will attendee calendars be updated, so you need to warn the organizer that the room is renamed, then he must update the room in his invite and send it to the attndees. Pretty Painful.

  9. You can rename the room, and the bookings will remain in place in the room calendar, but the new name is NOT reflected in the organizers calendar nor the Attendee calendar. So you must manually warn the organizer that the change has occurred and that they should update the room name in the booking and send the update a to the attendees.

  10. Hello, Thanks for these tips. Is there a way to define room’s location, phone number… by using power shell ?? Regards

Leave a Reply

Your email address will not be published. Required fields are marked *