Skip to main content

HotelDetails

Overview

The HotelDetails method returns is used when the supplier has an API call for each hotel code. Once executed the HotelList the HotelDetails will retrieve all the hotel information from the supplier and add to the already existing hotel in our database.

There are 5 possible implementations:

ImplementationsUse case
HotelDetailsStandard HotelDetails operation that retrieves and updates all hotels individually from the database.
HotelDetailsByDatesRetrieves and updates hotels based on specified dates without relying on existing database entries.
HotelDetailsMultiCodesRetrieves all hotel codes from the database but calls the integration in blocks of multiple hotels.
HotelDetailsMultiLanguagesNot yet implemented. Retrieves all hotel codes from the database and calls the integration with multiple languages simultaneously.
HotelDetailsMultiLanguagesMultiCodesNot yet implemented. Retrieves all hotel codes from the database and calls the integration with multiple languages and multiple codes at once.

Common Scenarios:

  • Supplier has a request per second/minute limit: You can request us to decrease the parallelism for that supplier.

Request

The Request is structured to accommodate access information for the content retrieval.

Overview

The request that receives the Connector is a Task with essential information that allows it to execute the operation properly:

  • Access: Represents access credentials and related information required for a connection.
  • Operation: Operation to be executed.
  • HotelCode: The code that will be used locally to retrieve the information.
  • Parallelism: The level of parallelism used to retrieve hotels from the supplier.

Sample

{
"Task": {
"Access": {
"Code": 11111,
"User": "tgx",
"Password": "password",
"Urls": {
"Generic": "https://api.hotelsupplier.com/generic"
},
"Parameters": {
"maxResults": "50",
"cacheEnabled": "true",
"requestTimeout": "5000",
"preferredSupplier": "SupplierX"
}
},
"Operation": "HotelDetails",
"HotelCode": "12345",
"Parallelism": 50,
"Languages": [ "en" ],
"Platform": "HOTELTEST",
"Supplier": "HOTELTEST",
"SupplierGroup": "HOTELTEST"
}
}

Details

The object ContentRq represents the structure of the content request as expected by the supplier.

NameTypeDescription
TaskIdIntegerUnique identifier of the task, automatically assigned by the system.
SupplierStringSupplier code associated with the access.
SupplierGroupStringSupplier group associated with the access.
PlatformStringThe platform that this supplier belongs to.
OperationServiceOperationEnumOperation to be executed.
TimeoutStringMaximum time to wait for a supplier response before timing out.Specified as a timestamp string (e.g., "24:00:00" for 24 hours).
AccessAccessAccess information required for the operation, including API credentials, endpoints,and other integration-specific connection details.
Access/CodeIntegerThe unique code identifying the access configuration.
Access/UserStringThe username used for authentication with the supplier.
Access/PasswordStringThe password used for authentication with the supplier.
Access/ApiKeyStringThe API key used for authentication or authorization.
Access/UrlsUrlsThe URLs associated with the access configuration.
Access/Urls/BookStringThe URL used for booking operations.
Access/Urls/SearchStringThe URL used for Search operations.
Access/Urls/QuoteStringThe URL used for Quote operations.
Access/Urls/GenericStringA generic URL for additional operations.
Access/ParametersAccessParametersAdditional parameters related to the connection.
LanguagesList<Iso2LanguageEnum>Language codes for the operation, represented as a list of ISO 639-1 2-character codes (e.g., "en", "es").
ObsoleteDaysIntegerApplicable only to HotelDetails operations. Specifies the number of days to filter hotels that have not been updated recently. Default value: 15 days. Setting this to 0 retrieves all hotels available for the given access, regardless of update date.
ParallelismIntegerDegree of parallelism for HotelDetails tasks.
HotelCodeStringSpecific hotel code to be executed locally in HotelDetails operations.

Response

The Response is structured to provide detailed information about the hotel.

Overview

The HotelDetails response provides a comprehensive structure containing all the information for a specific hotel. It includes basic data such as name, location, and category, as well as enriched content like rooms, amenities, media, and more.

Sample

{
"Code": "BADAJOZ#5",
"NativeSupplierCode": "5",
"Name": "BADAJOZ",
"CategoryCode": "4 Estrellas",
"ChainCode": null,
"ExclusiveDeal": null,
"Location": {
"Address": "CTRA.NACIONAL V, KM 393",
"City": "BADAJOZ",
"ZipCode": "06002",
"Descriptions": null,
"Indications": null,
"Country": 67,
"Coordinates": {
"Latitude": 38.893839,
"Longitude": -7.014112
},
"MinimumDestination": {
"Code": "06",
"Available": true,
"Names": {
"en": "BADAJOZ"
}
},
"Contact": {
"Email": "badajoz@xxx.com",
"Phone": "91425891",
"Fax": "910200200",
"Web": null
},
"Airports": null,
"State": null
},
"Amenities": null,
"CardTypes": null,
"Descriptions": null,
"Medias": [
{
"Code": "50",
"Url": "http://www.images.net/infor/work/imagen/hotel_07/mapa.jpg",
"Type": 3,
"Order": 1,
"Descriptions": {
"en": "Map view"
}
},
{
"Code": "100",
"Url": "http://www.images.net/infor/work/imagen/hotel_02/M.jpg",
"Type": 3,
"Order": 2,
"Descriptions": {
"en": "External view"
}
}
],
"Rooms": [
{
"Code": "201232338",
"Names": {
"en": "Standard Single room"
},
"Descriptions": {
"en": "Standard Single room"
},
"Area": 25.0,
"RoomOccupancy": {
"Adults": {
"Min": 1,
"Max": 1
},
"Children": {
"Min": 0,
"Max": 0
},
"Infants": {
"Min": 0,
"Max": 0
},
"Total": {
"Min": 1,
"Max": 1
}
},
"Beds": {
"NumberOfBeds": 1,
"Type": "SINGLE"
},
"Amenities": [
{
"Code": "2403",
"Type": 1,
"Descriptions": {
"en": [
"Free WiFi"
]
},
"Names": {
"en": "RES"
}
},
{
"Code": "318",
"Type": 1,
"Descriptions": {
"en": [
"Balcony"
]
},
"Names": {
"en": "RES"
}
}
],
"Medias": [
{
"Code": "01",
"Url": "http://www.images.net/infor/work/imagen/hotel_room_02/M.jpg",
"Type": 1,
"Order": 1,
"Descriptions": {
"en": "Room"
}
}
],
"Views": [
{
"Code": "01",
"Description": {
"en": "Sea view"
}
}
]
}
],
"PropertyType": null,
"MandatoryFees": null,
"CheckInData": null,
"CheckOutData": null
}

Details

The AccumulativeHotel object represents the standardized structure of the mapped hotel element.

NameTypeDescription
CodeStringHotel code. This code may have concatenated information.
NativeSupplierCodeStringNative supplier code, without any concatenations. This code will be used to retrieve Giata information.
NameStringHotel name.
CategoryCodeStringCategory code.
ChainCodeStringHotel chain code.
ExclusiveDealBooleanIndicates whether the hotel has an exclusive deal.
LocationAccumulativeLocationLocation of the hotel.
Location/AddressStringAddress of the hotel.
Location/CityStringCity of the hotel.
Location/ZipCodeStringZip code of the hotel.
Location/DescriptionsDictionary<Iso2LanguageEnum, List<String>>Dictionary containing location descriptions categorized by language.
Location/IndicationsDictionary<Iso2LanguageEnum, List<String>>Dictionary containing location indications categorized by language.
Location/CountryIso2CountryTypeEnumCountry represented by ISO alpha-2.
Location/CoordinatesAccumulativeCoordinatesCoordinates of the hotel.
Location/Coordinates/LatitudeDoubleLatitude.
Location/Coordinates/LongitudeDoubleLongitude.
Location/MinimumDestinationAccumulativeHotelMinimumDestinationThe lowest-level destination associated with the hotel. This value should match the one returned by the Destination call.
Location/MinimumDestination/
Code
StringDestination code.
Location/MinimumDestination/
Available
BooleanIndicates whether it is available to request in Search.
Location/MinimumDestination/
Names
Dictionary<Iso2LanguageEnum, String>Dictionary containing names categorized by language.
Location/ContactAccumulativeContactContact information of the hotel.
Location/Contact/EmailStringEmail address.
Location/Contact/PhoneStringPhone number.
Location/Contact/FaxStringFax number.
Location/Contact/WebStringWeb address.
Location/AirportsList<AccumulativeAirport>Nearby airports.
Location/Airports/IATACodeStringIATA code.
Location/StateStringState where the hotel is located.
AmenitiesList<AccumulativeAmenity>List of amenities.
Amenities/CodeStringCode of the amenity.
Amenities/TypeApplicationAreaTypeEnumType of the application area.
Amenities/DescriptionsDictionary<Iso2LanguageEnum, List<String>>Descriptions of the amenity, keyed by language.
Amenities/NamesDictionary<Iso2LanguageEnum, String>Names of the amenity, keyed by language.
CardTypesList<CreditCardType>List of accepted credit card types.
DescriptionsAccumulativeDescriptionsDescriptions of the hotel.
Descriptions/PoolDictionary<Iso2LanguageEnum, List<String>>Dictionary containing pool descriptions categorized by language.
Descriptions/ActivitiesDictionary<Iso2LanguageEnum, List<String>>Dictionary containing activities descriptions categorized by language.
Descriptions/RestaurantsDictionary<Iso2LanguageEnum, List<String>>Dictionary containing restaurants descriptions categorized by language.
Descriptions/GeneralDictionary<Iso2LanguageEnum, List<String>>Dictionary containing general descriptions categorized by language.
Descriptions/RoomsDictionary<Iso2LanguageEnum, List<String>>Dictionary containing room descriptions categorized by language.
Descriptions/AmenitiesDictionary<Iso2LanguageEnum, List<String>>Dictionary containing amenities descriptions categorized by language.
MediasList<AccumulativeMedia>List of medias.
Medias/CodeStringCode of the media.
Medias/UrlStringURL of the media.
Medias/TypeMediaTypeEnumType of the media.
Medias/OrderStringOrder of the media. Should be ordered from 1 onward.
Medias/DescriptionsDictionary<Iso2LanguageEnum, String>Descriptions of the media, keyed by ISO 2 language code.
RoomsList<AccumulativeRoom>List of rooms.
Rooms/CodeStringGets or sets the code of the room.
Rooms/AreaDoubleGets or sets the area of the room.
Rooms/NamesDictionary<Iso2LanguageEnum, String>Gets or sets the names of the room in different languages.
Rooms/DescriptionsDictionary<Iso2LanguageEnum, String>Gets or sets the descriptions of the room in different languages.
Rooms/RoomOccupancyAccumulativeRoomOccupancyGets or sets the room occupancy information.
Rooms/RoomOccupancy/AdultsAccumulativeMinMaxOccupancyAccumulative occupancy for adults.
Rooms/RoomOccupancy/Adults/MinIntegerMinimum occupancy.
Rooms/RoomOccupancy/Adults/MaxIntegerMaximum occupancy.
Rooms/RoomOccupancy/ChildrenAccumulativeMinMaxOccupancyAccumulative occupancy for children.
Rooms/RoomOccupancy/Children/
Min
IntegerMinimum occupancy.
Rooms/RoomOccupancy/Children/
Max
IntegerMaximum occupancy.
Rooms/RoomOccupancy/InfantsAccumulativeMinMaxOccupancyAccumulative occupancy for infants.
Rooms/RoomOccupancy/Infants/
Min
IntegerMinimum occupancy.
Rooms/RoomOccupancy/Infants/
Max
IntegerMaximum occupancy.
Rooms/RoomOccupancy/TotalAccumulativeMinMaxOccupancyAccumulative total occupancy.
Rooms/RoomOccupancy/Total/MinIntegerMinimum occupancy.
Rooms/RoomOccupancy/Total/MaxIntegerMaximum occupancy.
Rooms/BedsList<AccumulativeBed>Gets or sets the list of beds in the room.
Rooms/Beds/NumberOfBedsIntegerGets or sets the number of beds.
Rooms/Beds/TypeStringGets or sets the type of bed.
Rooms/AmenitiesList<AccumulativeAmenity>Gets or sets the list of amenities in the room.
Rooms/Amenities/CodeStringCode of the amenity.
Rooms/Amenities/TypeApplicationAreaTypeEnumType of the application area.
Rooms/Amenities/DescriptionsDictionary<Iso2LanguageEnum, List<String>>Descriptions of the amenity, keyed by language.
Rooms/Amenities/NamesDictionary<Iso2LanguageEnum, String>Names of the amenity, keyed by language.
Rooms/MediasList<AccumulativeMedia>Gets or sets the list of media associated with the room.
Rooms/Medias/CodeStringCode of the media.
Rooms/Medias/UrlStringURL of the media.
Rooms/Medias/TypeMediaTypeEnumType of the media.
Rooms/Medias/OrderStringOrder of the media. Should be ordered from 1 onward.
Rooms/Medias/DescriptionsDictionary<Iso2LanguageEnum, String>Descriptions of the media, keyed by ISO 2 language code.
Rooms/ViewsList<AccumulativeView>Gets or sets the list of views from the room.
Rooms/Views/CodeStringGets or sets the code.
Rooms/Views/DescriptionDictionary<Iso2LanguageEnum, String>Gets or sets the description.
PropertyTypeAccumulativePropertyTypeProperty type.
PropertyType/CodeStringProperty type code.
PropertyType/NameStringProperty type name.
MandatoryFeesList<AccumulativeMandatoryFee>Mandatory fees.
MandatoryFees/CodeStringFee code.
MandatoryFees/DescriptionStringFee description.
MandatoryFees/NameStringFee name.
MandatoryFees/ScopeStringFee scope.
MandatoryFees/DurationStringDuration of the fee.
MandatoryFees/NetAmountDoubleNet amount of the fee.
MandatoryFees/CurrencyCurrencyCurrency of the fee represented by ISO_4217.
MandatoryFees/IncludedBooleanIndicates whether the fee is included or not.
MandatoryFees/RefundBooleanIndicates whether the fee is refundable or not.
CheckInDataAccumulativeCheckDataCheck-in data for the hotel.
CheckInData/InstructionsDictionary<Iso2LanguageEnum, String>Dictionary containing check-in/check-out instructions categorized by language.
CheckInData/
SpecialInstructions
Dictionary<Iso2LanguageEnum, String>Dictionary containing special check-in/check-out instructions categorized by language.
CheckInData/MinAgeIntegerMinimum age for check-in/check-out.
CheckInData/BeginTimeTimeOnlyModelBegin time for check-in/check-out.
CheckInData/BeginTime/TimeStringGets or sets the time.
CheckInData/EndTimeTimeOnlyModelEnding time for check-in/check-out.
CheckInData/EndTime/TimeStringGets or sets the time.
CheckOutDataAccumulativeCheckDataCheck-out data for the hotel.
CheckOutData/InstructionsDictionary<Iso2LanguageEnum, String>Dictionary containing check-in/check-out instructions categorized by language.
CheckOutData/
SpecialInstructions
Dictionary<Iso2LanguageEnum, String>Dictionary containing special check-in/check-out instructions categorized by language.
CheckOutData/MinAgeIntegerMinimum age for check-in/check-out.
CheckOutData/BeginTimeTimeOnlyModelBegin time for check-in/check-out.
CheckOutData/BeginTime/TimeStringGets or sets the time.
CheckOutData/EndTimeTimeOnlyModelEnding time for check-in/check-out.
CheckOutData/EndTime/TimeStringGets or sets the time.