Data download

The first step towards integrating Stuba is to download, input and map the Stuba regions and hotels into your database.

 

For this, Stuba provides the regions and hotel content after logging into the Stuba developer portal.

Regions

The data is provided in a spreadsheet named Regions.xlsx. The sheet contains the regions and the countries to which they belong to.

The file is structured as:

  • RegionId
  • RegionName
  • StateCode
  • CountryId
  • CountryName

The Region Ids from this file should be included in AvailabilitySearch operations where required.

Hotels

Hotels are provided in a dump file which contains the hotel content files. Hotel content is provided in the form of individual XML files for each hotel. Each file is named by the HotelId of that hotel.

Every Hotel element consists of a substantial amount of data:

Name Type Description

<Id>

Integer

Numeric Id for the hotel.

<Name>

String

The name of the hotel.

<Region>

Complex

Contains details of the region that the hotel is in.

<Id>

Integer

Numeric Id for the region.

<Name>

String

The name of the region.

<CityId>

Interger

Id of the city to which the hotel belongs to.

<Type>

String

The type of the hotel.

<Address>

Complex

Contains the hotel’s address and contact information.

<Address1>

String

The first line of the hotel’s street address.

<Address2>

(Optional)

String

The second line of the hotel’s street address, where appropriate.

<Address3>

(Optional)

String

The third line of the hotel’s street address, where appropriate.

<City>

String

The city component of the hotel’s address.

<State>

(Optional)

String

The state or county component of the hotel’s address.

<Zip>

(Optional)

String

The hotel’s zip code or post code.

<Country>

String

The hotel’s country.

<Tel>

(optional)

String

The hotel’s telephone number.

<Fax>

(optional)

String

The hotel’s fax number.

<Email>

(optional)

String

An email address for the hotel.

<Url>

(optional)

String

A URL for the hotel’s own website.

<Stars>

(optional)

Integer

The hotel’s generic star rating.

<Rank>

(optional)

Integer

This is not operational.

<GeneralInfo>

Complex

Contains miscellaneous information about the hotel.

<CountRooms>

(optional)

Integer

The number of rooms in the hotel.

<CountFloors>

(optional)

Integer

The number of floors the hotel has.

<CountSuites>

(optional)

Integer

The number of suites in the hotel.

<CheckInTime>

(optional)

String

The hotel’s published check-in time.

<CheckOutTime>

(optional)

String

The hotel’s published check-out time.

<Latitude>

(optional)

Double

The latitude of the hotel, stored as the number of degrees North of the equator, taking values from -90.0 to +90.0.

<Longitude>

(optional)

Double

The longitude of the hotel, stored as the number of degrees East of the Prime Meridian through Greenwich, taking values from -180.0 to +180.0.

<Photo>

(optional; zero or more)

Complex

Data pointing to a web-hosted hotel photo.

<Url>

String

URL of a hotel photo image.

<Height>

<Width>

<Bytes>

Integer

The photo image’s height in pixels, width  in pixels and file size in bytes.

<Caption>

(optional)

String

Caption for the photo image.

<ThumbnailUrl>

(optional)

String

URL of a thumbnail version of the hotel photo image, where available.

<ThumbnailHeight>

(optional)

<ThumbnailWidth>

(optional)

Integer

The thumbnail photo image’s height in pixels, width in pixels and file size in bytes, where available.

<ThumbnailBytes>

(optional)

Integer

<PhotoType>

(optional)

String

Code for the type of photo.

<Description>

(optional; zero or more)

Complex

Categorised descriptive text about the hotel.

<Language>

String

ISO language code for the language of the description text.

<Type>

String

A text enumeration for the description text type (for example, general hotel description or location info).

<Text>

String

Descriptive text relating to the type specified

<Amenity>

(optional; zero or more)

Complex

Indicates presence of a particular amenity (E.g. swimming pool, dry cleaning service, etc.) at the hotel.

<Code>

String

Hotel amenity code.

<Text>

String

User-presentable localised hotel amenity description.

<Rating>

Complex

A hotel rating for this hotel.

<System>

String

The rating system this rating is applicable for (typically stars or keys).

<Description>

String

String representation of the rating.

<Rank>

(Optional)

Integer

This is not operational.

Linking Stuba hotels to Stuba regions

In the hotel static data files, you will find each hotel has tags <Region><Id> and

<CityId>. One of the two Ids will always be present in the regions spreadsheet – Regions.xlsx (which is used to map region codes). This will allow you to link each hotel to the correct region.

Example 1:

In the Stuba regions spreadsheet, the region code for New York City is 19793. If you have mapped this region code correctly to New York City in your system, you will be able to link all Stuba hotels in this destination to your New York City. Below are extracts from the hotel static data file for a New York City hotel.

 

<HotelElement>

<Id>963208</Id>

<Name>Blakely</Name>

<Region>

<Id>64379</Id>

<Name>Midtown Manhattan</Name>

<CityId>19793</CityId>

</HotelElement>

 

If you see, this hotel has a link to ‘19793’. If you have mapped this region code to the correct region (I.e. New York City) in your database, the above hotels will then be correctly linked to New York City for mapping.

Example 2:

Alternatively, for certain regions, you will find that the valid region code is

<Region><Id> and not <CityId> in the regions spreadsheet. For example, the code for Nice, France is 20510…

 

<HotelElement>

<Id>39909</Id>

<Name>Ellington</Name>

<Region>

<Id>20510</Id>

<Name>Nice</Name>

<CityId>16466</CityId>

 

Basically, if you don’t find the <Region><Id> in the regions spreadsheet, use the <CityId>.

Passenger Nationality

Some of Stuba’s properties will provide different rates and conditions for different passenger nationalities. A list of the nationality codes accepted by our API are available from the dashboard once logged in to our developer site.

The file is structured as:

  • CountryName
  • NationalityCode

The nationality codes from this file should be used when searching for availability and prices to ensure that the accurate availability and conditions are returned.

Hotel XML Sample

 <?xml version="1.0"?>
<HotelElement>
	<Id>324524</Id>
	<Name>Atlantis The Palm</Name>
	<Region>
		<Id>9043419</Id>
		<Name>Jumeirah / Marina / Palm</Name>
		<CityId>18870</CityId>
	</Region>
	<Type>Hotel</Type>
	<Address>
		<Address1>Crescent Road</Address1>
		<Address2>The Palm</Address2>
		<Address3/>
		<City>Dubai</City>
		<State/>
		<Zip/>
		<Country>United Arab Emirates</Country>
		<Tel/>
		<Fax/>
		<Email/>
		<Url/>
	</Address>
	<Stars>5</Stars>
	<GeneralInfo>
		<Latitude>25.13044</Latitude>
		<Longitude>55.11715</Longitude>
	</GeneralInfo>
	<Photo>
		<Url>/RXLImages/1163/324524/Main_324524.jpg</Url>
		<Width>1024</Width>
		<Height>625</Height>
		<Bytes>91772</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/324524_BigThumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>125</ThumbnailWidth>
		<ThumbnailHeight>125</ThumbnailHeight>
		<ThumbnailBytes>2734</ThumbnailBytes>
		<PhotoType>BigThumbImageOfHotel</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/Main_324524.jpg</Url>
		<Width>1024</Width>
		<Height>625</Height>
		<Bytes>91772</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/Main_324524_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1241</ThumbnailBytes>
		<PhotoType>ExternalViewOfTheHotel</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453792.jpg</Url>
		<Width>1024</Width>
		<Height>733</Height>
		<Bytes>93344</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453792_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1251</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453800.jpg</Url>
		<Width>1024</Width>
		<Height>670</Height>
		<Bytes>96195</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453800_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1225</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453809.jpg</Url>
		<Width>1024</Width>
		<Height>653</Height>
		<Bytes>93820</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453809_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1200</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453815.jpg</Url>
		<Width>1024</Width>
		<Height>646</Height>
		<Bytes>95963</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453815_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1226</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453824.jpg</Url>
		<Width>1024</Width>
		<Height>615</Height>
		<Bytes>96672</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453824_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1221</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453827.jpg</Url>
		<Width>1024</Width>
		<Height>636</Height>
		<Bytes>89765</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453827_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1217</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453837.jpg</Url>
		<Width>1024</Width>
		<Height>683</Height>
		<Bytes>99053</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453837_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1398</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453845.jpg</Url>
		<Width>1024</Width>
		<Height>669</Height>
		<Bytes>77072</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453845_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1127</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453855.jpg</Url>
		<Width>1024</Width>
		<Height>704</Height>
		<Bytes>119615</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453855_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1483</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453866.jpg</Url>
		<Width>1024</Width>
		<Height>683</Height>
		<Bytes>160090</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453866_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1385</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453873.jpg</Url>
		<Width>1024</Width>
		<Height>592</Height>
		<Bytes>102533</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453873_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1237</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Photo>
		<Url>/RXLImages/1163/324524/420453911.jpg</Url>
		<Width>1024</Width>
		<Height>683</Height>
		<Bytes>167196</Bytes>
		<Caption/>
		<ThumbnailUrl>/RXLImages/1163/324524/420453911_Thumb.jpg</ThumbnailUrl>
		<ThumbnailWidth>60</ThumbnailWidth>
		<ThumbnailHeight>60</ThumbnailHeight>
		<ThumbnailBytes>1392</ThumbnailBytes>
		<PhotoType>OtherPhotos</PhotoType>
	</Photo>
	<Description>
		<Language>en</Language>
		<Type>SurroundingArea</Type>
		<Text>With a stay at Atlantis, The Palm in Dubai (Palm Jumeirah), you'll be a 1-minute drive from Aquaventure and 7 minutes from Nakheel Mall.  This luxury hotel is 2.8 mi (4.6 km) from The Pointe and 4.3 mi (6.9 km) from The View at The Palm.</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>RoomTypes</Type>
		<Text>Make yourself at home in one of the 1539 guestrooms featuring iPod docking stations and minibars. Rooms have private furnished balconies or patios. 60-inch LED televisions with satellite programming provide entertainment, while complimentary wireless internet access keeps you connected. Private bathrooms with bathtubs or showers feature rainfall showerheads and designer toiletries.</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>PropertyInformation</Type>
		<Text>Pamper yourself with a visit to the spa, which offers massages, body treatments, and facials. After dipping into one of the 2 outdoor swimming pools, you can spend some time at the private beach. Additional amenities at this hotel include complimentary wireless internet access, concierge services, and babysitting (surcharge). Guests can get to nearby shops on the complimentary shuttle.Featured amenities include complimentary wired internet access, a business center, and limo/town car service. Event facilities at this hotel consist of a conference center and meeting rooms. A roundtrip airport shuttle is provided for a surcharge (available 24 hours), and free valet parking is available onsite.</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>AreaActivities</Type>
		<Text>Distances are displayed to the nearest 0.1 mile and kilometer. &lt;br /&gt; &lt;p&gt;Aquaventure - 0.4 km / 0.2 mi &lt;br /&gt; Lost Chambers - 1.4 km / 0.9 mi &lt;br /&gt; Nakheel Mall - 4.5 km / 2.8 mi &lt;br /&gt; The Pointe - 4.6 km / 2.8 mi &lt;br /&gt; The View at The Palm - 6.9 km / 4.3 mi &lt;br /&gt; Dubai College - 9.1 km / 5.7 mi &lt;br /&gt; American University of Dubai (AUD) - 10.2 km / 6.4 mi &lt;br /&gt; Dubai Marina Mall - 11.4 km / 7.1 mi &lt;br /&gt; Al Sufouh Beach - 11.6 km / 7.2 mi &lt;br /&gt; Marina Beach - 11.7 km / 7.3 mi &lt;br /&gt; The Walk - 11.8 km / 7.3 mi &lt;br /&gt; Skydive Dubai - 11.8 km / 7.3 mi &lt;br /&gt; Jebel Ali Race Course - 11.8 km / 7.4 mi &lt;br /&gt; Mohammad Bin Ahmed Al Mulla Mosque - 11.9 km / 7.4 mi &lt;br /&gt; The Beach Mall - 12.4 km / 7.7 mi &lt;br /&gt; &lt;/p&gt;&lt;p&gt;The nearest airports are:&lt;br /&gt;Dubai Intl. Airport (DXB) - 36.8 km / 22.9 mi&lt;br /&gt; Al Maktoum Intl. Airport (DWC) - 47.1 km / 29.3 mi&lt;br /&gt; Sharjah (SHJ-Sharjah Intl.) - 63 km / 39.1 mi&lt;br /&gt; &lt;/p&gt;&lt;p&gt;The preferred airport for Atlantis, The Palm is Dubai Intl. Airport (DXB). &lt;/p&gt;</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>PoliciesDisclaimers</Type>
		<Text>&lt;ul&gt;  &lt;li&gt;Extra-person charges may apply and vary depending on property policy&lt;/li&gt;&lt;li&gt;Government-issued photo identification and a credit card, debit card, or cash deposit may be required at check-in for incidental charges&lt;/li&gt;&lt;li&gt;Special requests are subject to availability upon check-in and may incur additional charges; special requests cannot be guaranteed&lt;/li&gt;&lt;li&gt;Guests must contact this property in advance to reserve cribs/infant beds and rollaway/extra beds&lt;/li&gt;&lt;li&gt;This property accepts credit cards; cash is not accepted&lt;/li&gt;&lt;li&gt;Cashless transactions are available&lt;/li&gt;&lt;li&gt;Safety features at this property include a fire extinguisher, a smoke detector, a security system, and a first aid kit&lt;/li&gt;&lt;li&gt;Please note that cultural norms and guest policies may differ by country and by property; the policies listed are provided by the property&lt;/li&gt;  &lt;/ul&gt;PropertyContentXML.Policies</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>DiningFacilities</Type>
		<Text>Grab a bite to eat at one of the hotel's 20 restaurants, or stay in and take advantage of the 24-hour room service. Snacks are also available at the coffee shop/cafe. Relax with a refreshing drink from the poolside bar or one of the 3 bars/lounges. Buffet breakfasts are available daily from 7 AM to 10 AM for a fee.</Text>
	</Description>
	<Description>
		<Language>en</Language>
		<Type>RXLContentId</Type>
		<Text>2235336</Text>
	</Description>
	<Amenity>
		<Code>CoffeeTeaMaker</Code>
		<Text>Tea and Coffee maker</Text>
	</Amenity>
	<Amenity>
		<Code>TVInRoom</Code>
		<Text>TV in room</Text>
	</Amenity>
	<Amenity>
		<Code>OutdoorPool</Code>
		<Text>Outdoor swimming pool</Text>
	</Amenity>
	<Amenity>
		<Code>MiniBarInRoom</Code>
		<Text>Mini-bar</Text>
	</Amenity>
	<Amenity>
		<Code>RoomService</Code>
		<Text>Room service</Text>
	</Amenity>
	<Amenity>
		<Code>HairDryer</Code>
		<Text>Hair dryer</Text>
	</Amenity>
	<Amenity>
		<Code>Bar</Code>
		<Text>Bar</Text>
	</Amenity>
	<Amenity>
		<Code>LaundryService</Code>
		<Text>Laundry service</Text>
	</Amenity>
	<Amenity>
		<Code>ReceptionArea</Code>
		<Text>Reception Area</Text>
	</Amenity>
	<Amenity>
		<Code>Reception24hr</Code>
		<Text>24hr. Reception</Text>
	</Amenity>
	<Amenity>
		<Code>Shower</Code>
		<Text>Shower</Text>
	</Amenity>
	<Amenity>
		<Code>SatelliteTV</Code>
		<Text>Satellite TV</Text>
	</Amenity>
	<Amenity>
		<Code>IndividualAirCondition</Code>
		<Text>IndividualAirCondition</Text>
	</Amenity>
	<Amenity>
		<Code>Balcony</Code>
		<Text>Balcony</Text>
	</Amenity>
	<Amenity>
		<Code>Bath</Code>
		<Text>Bath</Text>
	</Amenity>
	<Amenity>
		<Code>TelephoneInRoom</Code>
		<Text>Direct Dial Telephone</Text>
	</Amenity>
	<Amenity>
		<Code>Restaurants</Code>
		<Text>Restaurants</Text>
	</Amenity>
	<Rating>
		<System>Stars</System>
		<Score>50</Score>
		<Description>Five star</Description>
	</Rating>
	<Rank>186</Rank>
</HotelElement>