Workflow: Updating Out of Service Status

Out Of Service status indicates the room is unavailable for occupancy, but remains part of available inventory and could be sold (available when the Out of Service OPERA Control is active).

Note:

A room cannot be set to Out Of Service in the following scenarios:
  • Room is assigned for an arriving guest.
  • Room is checked-in.

Sequence Diagram


This image shows the workflow for Updating Out of Service Status.

Description of Steps

Description Operation

Set a room to Out of Service

Use the POST outOfServiceRooms operation to set a room to Out Of Service.

The user should set related Out Of Order Reason code ("reasonCode":) as well as a start date ("start":) and scheduled end date ("end":) of the status.

An optional text as "repairRemarks" can be sent for further details of the marked repair item.

It is not necessary to send the 'reasonDescription' value; this is linked with the 'reasonCode.'

The user should also be able to set a Room Status return status ("returnStatus":) that the room should be set to once the Out Of Order status has ended.

Update Out Of Service room status

Use the completeOutOfServiceRooms API when one or more rooms are no longer Out Of Service and can now be available for a guest to stay in. Specify in the request what status the room(s) ("returnStatus") should be returned to, such as Clean, Inspected, Dirty, or Pickup.

Set a Room to Out Of Service

POST {{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfServiceRooms

{
    "criteria": {
        "roomRangeList": {
            "roomIds": [
                "117"
            ],
            "roomOutOfOrder": {
                "repairRemarks": "remarks go here",
                "returnStatus": "Dirty",
                "reasonCode": "BROKEN",
                "reasonDescription": "Broken Toilet",
                "newDateRange": {
                    "start": "2020-08-31",
                    "end": "2020-09-01"
                },
                "start": "2020-08-31",
                "end": "2020-09-01"
            }
        }
    }
}

Response HTTP 201 created

Update an Out Of Service status

PUT {{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfOrderRooms

{
    "criteria": {
        "roomRepairByRoomNumber": [
            {
                "roomId": "100",
                "roomOutOfOrder": {
                    "repairRemarks": "remarks can go here",
                    "returnStatus": "Dirty",
                    "reasonCode": "GEN",
                    "reasonDescription": "General Maintenance",
                    "newDateRange": {
                        "start": "2020-08-31",
                        "end": "2020-08-31"
                    },
                    "start": "2020-08-31",
                    "end": "2020-09-01"
                }
            }
        ]
    }
}

Get a list of rooms currently set to Out Of Service

The partner system can call the API operation GET outOfServiceRooms to retrieve a list of rooms currently in Out Of Service Status or request a list of Rooms in Out Of Service for a specific date range.

Sequence Diagram


This image shows the workflow for GET outOfServiceRooms operation.

Description of Steps

Description Operation

Partner system sends the GET outOfServiceRooms operation to request a list of all rooms in active Out Of Servicestatus.

The response message contains the rooms with detailed Out Of Service information.

GET all Rooms with Out Of Service status

GET {{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfServiceRooms?startDate=2020-08-31&endDate=2020-09-01

{
    "housekeepingRooms": {
        "room": [
            {
                "roomType": {
                    "pseudoRoom": false,
                    "roomClass": "ALL",
                    "houseKeeping": false,
                    "roomType": "CLASSIC"
                },
                "roomId": "117",
                "housekeeping": {
                    "housekeepingRoomStatus": {
                        "housekeepingRoomStatus": "OutOfService",
                        "frontOfficeStatus": "Vacant",
                        "housekeepingStatus": "Vacant"
                    }
                },
                "outOfOrder": [
                    {
                        "repairRemarks": "remarks go here",
                        "returnStatus": "Dirty",
                        "reasonCode": "BROKEN",
                        "reasonDescription": "Broken Toilet",
                        "newDateRange": {
                            "start": "2020-08-31",
                            "end": "2020-08-31"
                        },
                        "housekeepingRoomStatus": "OutOfService",
                        "start": "2020-08-31",
                        "end": "2020-09-01"
                    }
                ]
            }
        ],
        "hotelId": "{{HotelId}}"
    },
    "links": [
        {
            "href": "{{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfServiceRooms",
            "rel": "self",
            "templated": false,
            "method": "POST",
            "operationId": "postOutOfServiceRooms"
        },
        {
            "href": "{{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfServiceRooms",
            "rel": "self",
            "templated": false,
            "method": "PUT",
            "operationId": "completeOutOfServiceRooms"
        },
        {
            "href": "{{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfServiceRooms",
            "rel": "self",
            "templated": false,
            "method": "POST",
            "operationId": "postOutOfServiceRooms"
        },
        {
            "href": "{{HostName}}/hsk/v1/hotels/{{HotelId}}/rooms/outOfOrderRooms",
            "rel": "self",
            "templated": false,
            "method": "GET",
            "operationId": "getOutOfOrderRooms"
        }
    ]
}