Skip to main content

Hotel List

The Hotel List method returns a comprehensive hotel list from a supplier's access to the Buyer, granting access to all the properties configured by the Seller for a given set of credentials. The returned fields include: Hotel Code, GiataId, Name, Address, ZipCode, Contact, CategoryCode etc.

HotelList 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:HotelList>
<ns:hotelListRQ>
<ns:timeoutMilliseconds>20000</ns:timeoutMilliseconds>
<ns:version>1</ns:version>
<ns:providerRQ>
<ns:code>suppliercode</ns:code>
<ns:id>1</ns:id>
<ns:rqXML>
<HotelListRQ 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 = "2"></Parameter>
</Parameters>
</Configuration>
</HotelListRQ>
</ns:rqXML>
</ns:providerRQ>
</ns:hotelListRQ>
</ns:HotelList>
</soapenv:Body>
</soapenv:Envelope>

Request Data Breakdown

HotelList request does not require any elements.

How to Paginate Responses

The Legacy Pull Sellers API provides paginated responses to handle cases where the number of hotels from the selected supplier exceeds 200.000. The default response page contains a maximum of 10.000 hotels, 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, including the expectedRange attribute, and paste it into 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 hotels, the response may contain a range from 0 to 1000 hotels.

1. Indicate the ContinuationToken and expectedRange in the Request

First, in your hotel list request you will add ContinuationToken field and specify in expectedRange field the number of hotels expected to receive in the response:

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

2. You will receive the Response

You will obtain a response with 1000 hotels per page:

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

3. Add the Token in the Request

This token and the previous expectedRange should be used as input in your next hotel list request, inside the ContinuationToken field:

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

HotelList Response

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

<HotelListRS xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<UpgradeUTCDate>2016-10-18T13:18:03+02:00</UpgradeUTCDate>
<Hotels>
<Hotel>
<Code>5</Code>
<ProviderCode>27</ProviderCode>
<GiataId source = "http://urlGiata">1200</GiataId>
<Name>BADAJOZ</Name>
<Address>CTRA.NACIONAL V, KM 393</Address>
<Airports>
<Airport>
<IATACode>BJZ</IATACode>
</Airport>
</Airports>
<Town>BADAJOZ</Town>
<ZipCode>06002</ZipCode>
<CountryISOCode>ES</CountryISOCode>
<AvailDestination code = "06" name = "BADAJOZ"/>
<GeographicDestination code = "06" name = "BADAJOZ" avail = "true"/>
<Latitude>38.893839</Latitude>
<Longitude>-7.014112</Longitude>
<Contact>
<Email>badajoz@xxx.com</Email>
<Telephone>91425891</Telephone>
<Fax>910200200</Fax>
</Contact>
<CategoryCode>4 Estrellas</CategoryCode>
<PaymentOptions cash="false" bankAcct="false">
<Cards>
<Card code="VI"/>
<Card code="AX"/>
<Card code="CA"/>
</Cards>
</PaymentOptions>
<ExclusiveDeal>true</ExclusiveDeal>
<PropertyCategory>
<Code>1</Code>
<Name>Hotel</Name>
</PropertyCategory>
</Hotel>
</Hotels>
</HotelListRS>

Response Data Breakdown

ElementRelTypeDescription
HotelListRS/UpgradeUTCDate1DateTimeIndicates the update date of the information in UTC format.
HotelListRS/Hotels0..n
Hotels/Hotel0..n
Hotel/Code1StringInternal code to perform availability and/or supplier code.
Hotel/ProviderCode0..1StringInternal code established by the supplier (see MetaData).
Hotel/GiataId0..1Giata code
@source0..1StringGiata url
Hotel/Name1StringHotel name
Hotel/Address1StringHotel address
Hotel/Airports0..1
Airports/Airport1..n
Airport/IATACode1StringIATA airport Code (airport near the hotel).
Hotel/Town1StringTown
Hotel/ZipCode0..1StringZipCode
Hotel/CountryISOCode1StringCountryISOCode
Hotel/AvailDestination0..1
@code1StringAvail destination code (lowest destination level).
@name1StringAvail destination name (lowest destination level).
Hotel/GeographicDestination1
@code1StringGeographic Destination code (lowest destination level).
@name1StringGeographic Destination name (lowest destination level).
@avail1BooleanIndicates if it is allowed in availability.
Hotel/Latitude0..1StringLatitude. Format is Decimal Degrees (e.g. 37.207295).
Hotel/Longitude0..1StringLongitude. Format is Decimal Degrees (e.g. -7.23768).
Hotel/Contact0..1
Contact/Email0..1StringContact email
Contact/Telephone0..1StringContact telephone
Contact/Fax0..1StringContact fax
Hotel/CategoryCode1StringHotel category code.
Hotel/Type0..1String
Hotel Type codes
Code Name
H Hotel
A Apartment
AH Apartment Hotel
C Club
AT Agrotourism
HS Hostel
CA House
V Ville
B Bungalows
D Disco Club
Hotel/PaymentOptions0..1Type of cards allowed by the supplier. This tag is only mandatory if payment type is different than MerchantPay.
@cash1BooleanCash indicates whether payment will be made in cash (true) or by card (false).
@bankAcct1BooleanBankAcct specifies whether payment will be made via bank transfer (true) or not (false).
PaymentOptions/Cards1
Cards/Card1..nType of card allowed.
@code1String
Credit Card codes
Code Name
VI Visa
AX American Express
BC BC Card
CA MasterCard
CB Carte Blanche
CU China Union Pay
DS Discover
DC Diners Club
T Carta Si
R Carte Bleue
N Dankort
L Delta
E Electron
JC Japan Credit Bureau
TO Maestro
S Switch
EC Electronic Cash
EU EuroCard
TP Universal air travel card
OP optima
ER Air Canada/RnRoute
XS access
O others
Hotel/ExclusiveDeal0..1BooleanIndicates that the Hotel has an Exclusive Deal.
Hotel/PropertyCategory0..1Hotels property type. Similar to Type, but on supplier’s side.
PropertyCategory/Code1StringSupplier’s property code.
PropertyCategory/Name1StringSupplier’s property name.