Skip to content

places

Places and Rooms. Room and workspace location details used for booking. The places entity set lives under /exchange/v1.0/places in the Organization category.

Fact Value
Path /exchange/v1.0/places
Category Organization
Tier Tier 9, Hybrid and organization
Read role Mailbox.Read.All (Community)
Write role Mailbox.ReadWrite.All (Pro)
Backing cmdlets Get-Place, Set-Place
Method Path Synopsis Role Plan
GET /exchange/v1.0/places List places - room and equipment mailbox metadata (Get-Place). Useful for booking-policy and floor-plan tooling. Mailbox.Read Community
GET /exchange/v1.0/places/{key} Get a single places entry by Identity. Mailbox.Read Community
PATCH /exchange/v1.0/places/{key} PATCH /places/{key} - update per-place metadata for a room or equipment mailbox (capacity, floor, building, A/V devices, accessibility flag, lat/long, etc.). Body keys map 1:1 to Set-Place parameters. Backed by Mailbox.ReadWrite.All. Returns 200 + post-Set place. Mailbox.ReadWrite Pro

List places - room and equipment mailbox metadata (Get-Place). Useful for booking-policy and floor-plan tooling.

Backing cmdlet: Get-Place. Role: Mailbox.Read (Community).

Parameter In Type Required Description
type query string Filter by room-mailbox type (Get-Place -Type). Valid values: Room, RoomList, Space.
all query bool (switch) Return all results instead of the EXO default of 1000. Maps -ResultSize Unlimited on Get-Place; prevents silent truncation in large tenants.

Get a single places entry by Identity.

Backing cmdlet: Get-Place. Role: Mailbox.Read (Community).

PATCH /places/{key} - update per-place metadata for a room or equipment mailbox (capacity, floor, building, A/V devices, accessibility flag, lat/long, etc.). Body keys map 1:1 to Set-Place parameters. Backed by Mailbox.ReadWrite.All. Returns 200 + post-Set place.

Backing cmdlet: Set-Place. Role: Mailbox.ReadWrite (Pro).

Parameter In Type Required Description
audioDeviceName body
building body
capacity body
city body
countryOrRegion body
displayDeviceName body
floor body
floorLabel body
geoCoordinates body
isWheelChairAccessible body
label body
mtrEnabled body
parentId body
phone body
postalCode body
state body
street body
tags body
videoDeviceName body
dryRun query bool (switch)

Update per-place metadata for a room or equipment mailbox via Set-Place. The {key} identifies the underlying room/equipment mailbox (by Identity / Alias / SMTP). Block 4 shipped the write surface - fields cover capacity, building/floor, A/V devices, accessibility flag, geo coordinates, and free-form tags. Backed by Mailbox.ReadWrite.All. Returns 200 + the post-Set place.

PATCH /exchange/v1.0/places/{key} HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
{
"capacity": 12,
"building": "HQ-East",
"floor": 4,
"floorLabel": "4th Floor - Engineering",
"audioDeviceName": "Logitech Group",
"videoDeviceName": "Logitech MeetUp",
"isWheelChairAccessible": true,
"mtrEnabled": true,
"tags": [
"Whiteboard",
"Conference"
]
}
HTTP/1.1 200 OK
{
"@odata.context": "https://api.contoso.com/exchange/v1.0/$metadata#places/$entity",
"Id": "room-eng-4a",
"Identity": "Engineering Conference 4A",
"DisplayName": "Engineering Conference 4A",
"Capacity": 12,
"Building": "HQ-East",
"Floor": 4,
"FloorLabel": "4th Floor - Engineering",
"AudioDeviceName": "Logitech Group",
"VideoDeviceName": "Logitech MeetUp",
"IsWheelChairAccessible": true,
"MTREnabled": true,
"Tags": [
"Whiteboard",
"Conference"
]
}

Related: GET /exchange/v1.0/places, GET /exchange/v1.0/places/{key}

?dryRun=true previews of any write stay on Community.