Create a room
Creates a physical or online room in your institution. Required: name and personCapacity. For physical rooms, personCapacity must be at least 1; for online rooms set isOnline: true and personCapacity: 0. Optionally link amenities (discover via GET /amenities) and a location in the same request. Scoped to your integration’s institution via Basic Auth credentials.
/roomsAuthorizationBasic auth · headerrequiredBasic Auth with clientId as username and clientSecret as password
Idempotency-Keystringrequiredapplication/jsonnamestringrequiredDisplay name for the room, shown in the dashboard and when scheduling appointments (e.g. Lecture Hall A, Seminar Room 3).
personCapacityintegerrequiredMaximum number of people the room holds. Required on create. Must be at least 1 for physical rooms (isOnline: false or omitted). Use 0 only when isOnline is true.
codestringOptional short identifier for the room. When omitted or empty, a unique code is auto-generated from name.
addressNotesstringOptional free-text notes for finding or accessing the room (e.g. directions, door codes, wheelchair access).
amenityIdsstring[]Optional IDs of equipment/amenities to link to the room (e.g. Projector, Whiteboard). Discover available amenities via GET /amenities. Amenities must belong to your institution.
locationIdstring | nullOptional ID of a location (campus/building) this room belongs to. Pass null to leave the room unassigned.
isOnlinebooleanWhether this is a virtual/online room rather than a physical space. When true, personCapacity may be 0 and onlineLink can hold the meeting URL.
onlineLinkstring | nullMeeting or video link for online rooms (e.g. Zoom or Teams URL). Only relevant when isOnline is true.
Room created
dataRoomDetailrequiredFull room returned by GET /rooms/{id}, POST /rooms, and PATCH /rooms/{id}. Includes location, equipmentAndAmenities, courses, modules, and scheduledChanges (sorted by most recent startDate first).
Show propertiesHide properties
idstringrequirednamestringrequiredinstitutionIdstringrequiredpersonCapacityintegerrequiredaddressNotesstringrequiredAdditional address notes. Empty string when not set.
codestring | nulllocationIdstring | nullstatusstringrequiredACTIVEMAINTENANCEINACTIVEisOnlinebooleanrequiredonlineLinkstring | nulllocationLocationSummary | nullShow propertiesHide properties
idstringrequirednamestringrequiredDisplay name for the location — the label shown in the dashboard when managing rooms and assigning them to a site (e.g. Main Campus, North Building, Sleeping Pod Area).
addressstringrequiredPhysical street or postal address of the location. Used in the dashboard for map display and geocoding — provide a real-world address, not the location name repeated (e.g. 123 University Ave, 10115 Berlin).
institutionIdstringrequirednullequipmentAndAmenitiesAmenity[]requiredStructured equipment and amenities linked to the room.
Show propertiesHide properties
AmenityidstringrequiredinstitutionIdstringrequirednamestringrequiredcreatedAtstring<date-time>requiredupdatedAtstring<date-time>requiredcolorstring | nulliconstring | nullcoursesobject[]requiredShow propertiesHide properties
objectidstringrequiredroomIdstringrequiredcourseIdstringrequiredcourseobjectrequiredShow propertiesHide properties
idstringrequirednamestringrequiredcodestring | nullcolorinteger | nulliconstring | nulliconTypestring | nulllayer_idstringrequiredmodulesobject[]requiredShow propertiesHide properties
objectidstringrequiredroomIdstringrequiredmoduleIdstringrequiredmoduleobjectrequiredShow propertiesHide properties
idstringrequirednamestringrequiredcodestring | nullscheduledChangesRoomScheduledChange[]requiredAll scheduled status windows for this room (past, active, and future), sorted by most recent startDate first.
Show propertiesHide properties
RoomScheduledChangeidstringrequiredroomIdstringrequiredstatusstringrequiredACTIVEMAINTENANCEINACTIVEstartDatestring<date-time>requiredendDatestring<date-time> | nullreasonstring | nullcreatedAtstring<date-time>requiredcreatedByobject | nullrequiredShow propertiesHide properties
idstringrequirednamestringrequirednullmetaResponseMetarequiredShow propertiesHide properties
requestIdstringrequiredtimestampstring<date-time>requiredversionstringrequiredv4Bad Request
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestringUnauthorized
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestringConflict
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestringUnprocessable Entity — validation or business rule error
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestringToo Many Requests
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestringInternal Server Error
typestringrequirederrorcodestringrequiredbad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
objectfieldstringmessagestring