Skip to main content
Deprecated API

The Legacy Pull Buyers API, our initial Buyers API launched in 2012, is now deprecated and should not be further developed. Instead, we introduced the Hotel-X Buyers API in 2017, which serves as the sole API for new Buyers looking to integrate and participate in our Marketplace.

Room List

The Room List method returns a comprehensive room list from a supplier's access that may include translations to other languages, granting you access to all the rooms configured by the Seller for a given set of credentials. The returned fields include: Room code, Room name etc.

caution

The amount of information and content returned might vary between Sellers.

RoomList Request

<soapenv:Envelope xmlns:soapenv = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns = "http://schemas.xmltravelgate.com/hub/2012/06" xmlns:wsse = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<soapenv:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<ns:RoomList>
<ns:roomListRQ>
<ns:timeoutMilliseconds>20000</ns:timeoutMilliseconds>
<ns:version>1</ns:version>
<ns:providerRQ>
<ns:code>suppliercode</ns:code>
<ns:id>1</ns:id>
<ns:rqXML>
<RoomListRQ xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<timeoutMilliseconds>19700</timeoutMilliseconds>
<source>
<languageCode>en</languageCode>
</source>
<filterAuditData>
<registerTransactions>true</registerTransactions>
</filterAuditData>
<Configuration>
<User>user</User>
<Password>password</Password>
<UrlAvail>www.supplier.com/avail</UrlAvail>
<UrlReservation>www.supplier.com/reservation</UrlReservation>
<UrlValuation>www.supplier.com/valuation</UrlValuation>
<UrlGeneric>www.supplier.com/generic</UrlGeneric>
<Parameters>
<Parameter key = "UrlListHotels" value = "http://www.supplier.com/ListHotels"></Parameter>
<Parameter key = "Access" value = "22334"></Parameter>
</Parameters>
</Configuration>
</RoomListRQ>
</ns:rqXML>
</ns:providerRQ>
</ns:roomListRQ>
</ns:RoomList>
</soapenv:Body>
</soapenv:Envelope>

Request Data Breakdown

info

Check the values you need to add in the header and common elements.

RoomList request does not require any elements.

How to Paginate Responses

The Legacy Pull Buyers API provides paginated responses to handle cases where the number of rooms from the selected supplier exceeds 200.000. The default response page contains a maximum of 200.000 rooms, but you can specify the number of objects returned per page using the ContinuationToken and the attribute expectedRange fields in the request.

To include the ContinuationToken in your request, all you need to do is:

  1. Add the ContinuationToken and expectedRange fields to the request.

  2. After receiving a response, you will only receive a portion of the full list. To access the next page, simply copy the ContinuationToken tag from the response and include it in your next request. This will allow you to obtain a new set of objects in the following response.

  3. Repeat these steps until the token is no longer included in the response.

note

If the client requests 1000 rooms, the response may contain a range between 1000 to 1999 rooms.

1. Indicate the ContinuationToken and expectedRange in the Request

First, in your room list request you will add ContinuationTokentoken field and specify in expectedRange field the number of rooms expected to receive in the response:

<RoomListRQ xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">                
<ContinuationToken expectedRange = "1000"></ContinuationToken>
</RoomListRQ>

2. You will recieve the Response

You will obtain a response with 1000 rooms per page:

<RoomListRS xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">                
<ContinuationToken expectedRange = "1000">&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;ContinuationToken&gt;&lt;ContinuationToken&gt;&lt;Version&gt;2.0&lt;/Version&gt;&lt;Type&gt;Table&lt;/Type&gt;&lt;NextPartitionKey&gt;1!24!bG93Y29zdGhvbGlkYXlfWk1U&lt;/NextPartitionKey&gt;&lt;NextRowKey&gt;1!40!bG93Y29zdGhvbGlkYXlfWk1UXzBoNFIlMjNvcXBr&lt;/NextRowKey&gt;&lt;TargetLocation&gt;Primary&lt;/TargetLocation&gt;&lt;/ContinuationToken&gt;&lt;/ContinuationToken&gt;</ContinuationToken>
</RoomListRS>

3. Add the Token in the Request

This token should be used as input in your next rooms list request, inside the ContinuationToken field:

<RoomListRQ xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">                
<ContinuationToken>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;ContinuationToken&gt;&lt;ContinuationToken&gt;&lt;Version&gt;2.0&lt;/Version&gt;&lt;Type&gt;Table&lt;/Type&gt;&lt;NextPartitionKey&gt;1!24!bG93Y29zdGhvbGlkYXlfWk1U&lt;/NextPartitionKey&gt;&lt;NextRowKey&gt;1!40!bG93Y29zdGhvbGlkYXlfWk1UXzBoNFIlMjNvcXBr&lt;/NextRowKey&gt;&lt;TargetLocation&gt;Primary&lt;/TargetLocation&gt;&lt;/ContinuationToken&gt;&lt;/ContinuationToken&gt;</ContinuationToken>
</RoomListRQ>

RoomList Response

After each request, the Seller will have to process the data and provide a response. Upon receiving a RoomList request, the Seller will send you a corresponding RoomList response.

<RoomListRS>
<UpgradeUTCDate>2016-10-18T13:18:03+02:00</UpgradeUTCDate>
<RoomsInfo>
<RoomInfo>
<Code>STD</Code>
<Name>Standard</Name>
</RoomInfo>
<RoomInfo>
<Code>ST</Code>
<Name>Suite</Name>
</RoomInfo>
</RoomsInfo>
</RoomListRS>

Response Data Breakdown

ElementRelTypeDescription
RoomListRS/UpgradeUTCDate1DateTimeIndicates the update date of the information in UTC format.
RoomListRS/RoomsInfo1Root node, list of rooms
RoomsInfo/RoomInfo1..n
RoomInfo/Code1StringRoom code
RoomInfo/Name1StringRoom name
note

In AvailRQ (Common Elements), you have the option to specify the language for the room description you want to receive. You can choose any language supported by the supplier; otherwise, the default language, typically English, will be used. The standard language options include English and Spanish.