Get Rooms and Rates

Get rooms along with rates for selected hotel

RoomsRates API details:
HTTP: GET
Endpoint: {baseEndpoint}/api/v1/hotels/{{hotel_id}}/rooms?searchResponseToken={{search_response_token}}

The RoomsRates API provides the following details:

  1. Rooms: It contains the details about the room such as name, description, facilities, bed info, area of the room.
  2. Rates: It contains the details about the rates of the rooms offered by the hotel such as total rate, base rate, taxes, fee, refundability info, cancellation policies info and many more.

In the Search API response, we receive room information for the hotel's minimum rate. However, hotels typically offer multiple rooms with varying rates based on their features and specifications. The RoomRates API is responsible for fetching comprehensive details for the various room options provided by the hotel.

FAQs

Does the API return images for rooms?
Yes, the API does provide images for the rooms. It is available only if the suppliers provide this data.


Does the API return information about the charges to be paid at the property?
Yes, the API does provide information about additional charges that need to be paid at the property. It is available only if the suppliers provide this data.


How to use rate combinability type?

Rate combinability types determine how different hotel rates can be combined based on their RateCombinabilityId. Here’s how to use each type for use case of 2 rooms search:

  1. None:

Description: Ignore these rates; they should not be combined with any other rates.
Example: A rate with rateCombinabilityType: "None" should be ignored when combining.
Example JSON:

{  
    "id": "11",  
    "rateCombinabilityType": "None",  
    "occupancies": [  
        {  
            "roomId": "1"  
        },  
        {  
            "roomId": "1"  
        }  
    ]  
}
  1. GroupDifferentId:

Description: Combine rates with different RateCombinabilityIds.
Example: Combine rates with id: 12 (RateCombinabilityId: "456") and id: 22 (RateCombinabilityId: "789").
Example JSON:

{  
    "id": "12",  
    "rateCombinabilityType": "GroupDifferentId",  
    "rateCombinabilityId": "456",  
    "occupancies": [  
        {  
            "roomId": "1"  
        }  
    ]  
},  
{  
    "id": "22",  
    "rateCombinabilityType": "GroupDifferentId",  
    "rateCombinabilityId": "789",  
    "occupancies": [  
        {  
            "roomId": "2"  
        }  
    ]  
}
  1. GroupWithinSameId:

Description: Combine rates with the same RateCombinabilityId, excluding itself.
Example: Rate with id: 23 (RateCombinabilityId: "111") can be combined with id: 24 and id: 14, which also have RateCombinabilityId: "111".
Example JSON:

{  
    "id": "23",  
    "rateCombinabilityType": "GroupWithinSameId",  
    "rateCombinabilityId": "111",  
    "occupancies": [  
        {  
            "roomId": "2"  
        }  
    ]  
},  
{  
    "id": "24",  
    "rateCombinabilityType": "GroupWithinSameId",  
    "rateCombinabilityId": "111",  
    "occupancies": [  
        {  
            "roomId": "2"  
        }  
    ]  
},  
{  
    "id": "14",  
    "rateCombinabilityType": "GroupWithinSameId",  
    "rateCombinabilityId": "111",  
    "occupancies": [  
        {  
            "roomId": "1"  
        }  
    ]  
}
  1. GroupSameId:

Description: Combine rates with the same RateCombinabilityId, including itself.
Example: Combine rates with id: 13 and id: 21, both having RateCombinabilityId: "111".
Example JSON:

{  
    "id": "13",  
    "rateCombinabilityType": "GroupSameId",  
    "rateCombinabilityId": "111",  
    "occupancies": [  
        {  
            "roomId": "1"  
        }  
    ]  
},  
{  
    "id": "21",  
    "rateCombinabilityType": "GroupSameId",  
    "rateCombinabilityId": "111",  
    "occupancies": [  
        {  
            "roomId": "2"  
        }  
    ]  
}

Reference JSON example:

{
    "hotelId": "123",
    "token": "abc123",
    "currency": "USD",
    "rooms": [
        {
            "id": "1",
            "name": "Standard Double room"
        },
        {
            "id": "2",
            "name": "Deluxe Double room"
        }
    ],
    "rates": [
        {
            "id": "11",
            "rateCombinabilityType": "None",
            "rateCombinabilityId": "123",
            "occupancies": [
                {
                    "roomId": "1"
                },
                {
                    "roomId": "1"
                }
            ]
        },
        {
            "id": "13",
            "rateCombinabilityType": "GroupSameId",
            "rateCombinabilityId": "111",
            "occupancies": [
                {
                    "roomId": "1"
                }
            ]
        },
        {
            "id": "21",
            "rateCombinabilityType": "GroupSameId",
            "rateCombinabilityId": "111",
            "occupancies": [
                {
                    "roomId": "2"
                }
            ]
        },
        {
            "id": "12",
            "rateCombinabilityType": "GroupDifferentId",
            "rateCombinabilityId": "456",
            "occupancies": [
                {
                    "roomId": "1"
                }
            ]
        },
        {
            "id": "22",
            "rateCombinabilityType": "GroupDifferentId",
            "rateCombinabilityId": "789",
            "occupancies": [
                {
                    "roomId": "2"
                }
            ]
        },
        {
            "id": "23",
            "rateCombinabilityType": "GroupWithinSameId",
            "rateCombinabilityId": "222",
            "occupancies": [
                {
                    "roomId": "2"
                }
            ]
        },
        {
            "id": "24",
            "rateCombinabilityType": "GroupWithinSameId",
            "rateCombinabilityId": "222",
            "occupancies": [
                {
                    "roomId": "2"
                }
            ]
        },
        {
            "id": "14",
            "rateCombinabilityType": "GroupWithinSameId",
            "rateCombinabilityId": "222",
            "occupancies": [
                {
                    "roomId": "1"
                }
            ]
        }
    ]
}

By understanding and applying these combinability types, you can effectively manage and combine hotel room rates based on specific rules.


Error Codes

Error CodeError Message
401'{{Field}}' must not be empty.
4004The hotel you selected is sold out
500Your request failed due to an unknown system error. Please contact support team with the correlationId.