Migrating from HDCN to Facilities API
If you previously implemented facilities through OTA_HotelDescriptiveContentNotif
endpoint, use this topic to learn how to migrate to the new Facilities API.
To find out all the different details supported, see the Facilities API Specification. To find out more about each facility details, see the Meta endpoint.
Mapping OTA_HotelDescriptiveContentNotif fields
Migrating hotel amenity codes
This section covers the necessary Facility API fields to specify when migrating the hotel amenity codes under HotelInfo >> Services >> Service
in OTA_HotelDescriptiveContentNotif
API.
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
facility_id | Specifies the Booking.com facility ID. | integer | required | - | Replaces the OTA HAC code (HotelInfo >> Services >> Service >> Code ) with the Booking.com facility ID. HotelInfo >> Services >> Service Code .To get the Booking.com facility ID for a corresponding OTA code, see the Meta endpoint. |
state | Specifies whether the facility is present or missing. | integer | required | - | HotelInfo >> Services >> Service >> ExistsCode |
Migrating Restaurant facility
To migrate the restaurant details using the Facilities API, see the following table.
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
facility_id | Specifies the Booking.com facility ID. | integer | required | - | Replaces the OTA HAC code (HotelInfo >> Services >> Service >> Code ) with the Booking.com facility ID. HotelInfo >> Services >> Service Code .To get the Booking.com facility ID for a corresponding OTA code, see the Meta endpoint. |
state | Specifies whether the facility is present or missing. | integer | required | - | HotelInfo >> Services >> Service >> ExistsCode |
instances | Contains multiple restaurant instances | object | optional | - | |
> instance_id | Specifies individual restaurant instance ID | integer | optional | - | |
> restaurant_details | Contains individual restaurant instance ID | integer | optional | - | FacilityInfo >> Restaurants >> Restaurant ` |
>> name | Specifies individual restaurant names | string | optional | - | FacilityInfo >> Restaurants >> Restaurant >> @RestaurantName |
>> guest_only | Specifies whether the restaurant is open for the property's guests only | string | optional | - | |
>> accept_reservations | Specifies whether the restaurant accepts reservations. | boolean | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> DescriptiveText >> @accepts reservations |
>> outdoor_seating | Specifies whether the restaurant provides outdoor seating. | boolean | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> DescriptiveText >> @outdoor seating |
>> meal_types_list | Specifies the restaurant's meal type. | enumerated string | optional | Possible values are: UNKNOWN_MEAL_TYPE, HALAL, KOSHER, VEGETARIAN, VEGAN, GLUTEN_FREE, DAIRY_FREE | FacilityInfo >> Restaurants >> Restaurant >> TPA_Extensions >> @DietaryOption |
>> ambiances_list | Specifies the restaurant's ambiance. | string | optional | Possible values are: UNKNOWN_AMBIANCE, FAMILY_KIDS_FRIENDLY, TRADITIONAL, MODERN, ROMANTIC | FacilityInfo >> Restaurants >> Restaurant >> TPA_Extensions >> @Ambiance |
>> open_for_meals_list | Specifies whether the restaurant offers breakfast, lunch, brunch, or dinner. | string | optional | Possible values are: UNKNOWN_OPEN_FOR_MEALS, BREAKFAST, BRUNCH, LUNCH, DINNER, HIGH_TEA, COCKTAIL_HOUR | FacilityInfo >> Restaurants >> Restaurant >> @OfferBreakfast, @OfferDinner, @OfferBrunch, @OfferDinner |
>> cuisines_list | Specifies details of the type of food served at a property's restaurant. | enumerated string | optional | Possible values are: UNKNOWN_CUISINE, AFRICAN, AMERICAN, ARGENTINIAN, BELGIAN, BRAZILIAN, CAJUN_CREOLE, CAMBODIAN, CANTONESE, CARIBBEAN, CATALAN, CHINESE, DUTCH, BRITISH, ETHIOPIAN, FRENCH, GREEK, INDIAN, INDONESIAN, IRISH, ITALIAN, JAPANESE, KOREAN, MALAYSIAN, MEDITERRANEAN, MEXICAN, MIDDLE_EASTERN, MOROCCAN, NEPALESE, PERUVIAN, PIZZA, POLISH, PORTUGUESE, SCOTTISH, SEAFOOD, SICHUAN, SINGAPOREAN, SPANISH, STEAKHOUSE, SUSHI, TEXMEX, THAI, TURKISH, VIETNAMESE, AUSTRIAN, AUSTRALIAN, GERMAN, RUSSIAN, LOCAL, ASIAN, INTERNATIONAL, LATIN_AMERICAN, EUROPEAN, CROATIAN, HUNGARIAN, GRILL_BBQ, SOUTH_AFRICAN | FacilityInfo >> Restaurants >> Restaurant >> CuisineCodes >> CuisineCode >> @Code |
>> is_buffet | Specifies individual restaurant names | string | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> DescriptiveText >> @buffet |
>> is_alacarte | Specifies individual restaurant names | string | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> DescriptiveText >> @a la carte |
schedule_details | Contains the schedule details for the restaurant's operation. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes |
> schedule | Specifies opening times on a certain day of the week. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime |
>> from | Contains the start time of the opening hours. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start |
>>> hours | Specifies the start time in hours. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start HH (The hour part in the @Start value HH:MM) |
>>> minutes | Specifies the start time in minutes. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start MM (The minute part in the @Start value HH:MM) |
>> to | Contains the end time of the opening hours. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End |
>>> hours | Specifies the end time in hours. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End HH (The hour part in the @End value HH:MM) |
>>> minutes | Specifies the end time in minutes. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End (The minute part in the @End value HH:MM) |
>>> day_of_week | Specifies the day of the week. | enumerated string | required | Possible values are: UNKNOWN_DAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY Allows you to specify different operating hours depending on the days of the week. | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Mon, @Tue, @Weds, @Thur, @Fri, @Sat, @Sun |
temporarily_closed_details | Contains temporary closure information. | object | optional | - | |
> closed | Contains start and end dates of the closure. | object | optional | - | |
> start_date | Contains the closure start date. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure begins. | integer | optional | - | |
> end_date | Contains the closure end date. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure ends. | integer | optional | - | |
surcharge_details | Contains the surcharge details. | object | optional | - | |
surcharge_type | Specifies the surcharge type. | string | optional | Possible values are: DEFAULT, FREE, PAID | Defaults to DEFAULT (When created using HDCN.) |
Migrating Parking facility
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
facility_id | Specifies the Booking.com Facility ID. | integer | required | - | Replaces the OTA HAC code (OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> HotelInfo >> Services >> Service >> Code ) with the Booking.com facility ID. HotelInfo >> Services >> Service Code . To get the Booking.com facility ID for a corresponding OTA code, see the Meta endpoint. |
state | Specifies whether the facility is present or missing. | integer | required | - | HotelInfo >> Services >> Service >> ExistsCode |
instances | Contains multiple parking instances. | object | optional | - | |
> instance_id | Specifies individual parking instance ID. | integer | optional | - | |
> parking_details | Contains individual parking instance ID. | integer | optional | - | |
>> name | Specifies individual parking names. | string | required | - | |
>> parking_type | Specifies the parking type. | enumerated string | optional | - | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> Policies >> Policy >> FeePolicies >> FeePolicy >> TPA_Extensions >> ParkingFeePolicy >> ParkingFeePolicy >> @ParkingType |
>> parking_location | Specifies the parking location. | enumerated string | required | Possible values are: UNKNOWN_LOCATION, ON_SITE, NEARBY | |
>> parking_access | Specifies parking eligibility. | enumerated string | required | Possible values are: UNKNOWN_PARKING_ACCESS, ONLY_GUESTS, GENERAL_PUBLIC | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >>HotelInfo >> Services >> Service >> ParkingFeePolicy >> @ParkingProperty |
>> parking_reservation | Specifies whether parking reservations are required. | enumerated string | required | Possible values are: UNKNOWN_RESERVATION, NEEDED, NOT_NEEDED, NOT_POSSIBLE | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> Policies >> Policy >> FeePolicies >> FeePolicy >> TPA_Extensions >> ParkingFeePolicy >> @ParkingReservation |
>> max_height_m | Specifies the maximum parking height. | number | optional | ||
>> has_valet_service | Specifies whether valet service is available at the property. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
>> has_onsite_staff | Specifies availability of parking staff onsite. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
>> has_gated_parking | Specifies whether the parking facility is gated. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
>> has_security_cameras | Specifies whether the parking facility has security cameras. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
>> has_ev_charging_station | Specifies whether the parking facility has EV charging stations. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
>> has_accessible_parking_spots | Specifies whether the parking facility has accessible parking spots. | enumerated string | optional | Possible values are: NOT_SPECIFIED, PRESENT, MISSING | |
> payment_details | Specifies payment details. | integer | optional | - | |
>> charge_mode | Specifies the parking charge mode. | string | required | Possible values are: UNKNOWN_CHARGE_MODE, FREE, PAID, CHARGES_MAY_APPLY | |
>> charge_details | Specifies the parking charge details. | object | optional | ||
>>> price | Specifies the parking fee in the property's currency. | number | optional | ||
>>> frequency | Specifies the parking charge frequency. | enumerated string | optional | UNKNOWN_FREQUENCY, PER_STAY, PER_MINUTE, PER_HALF_HOUR, PER_HOUR, PER_DAY, PER_WEEK |
Migrating Swimming facility
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
facility_id | Specifies the Booking.com facility ID. | integer | required | - | Replaces the OTA HAC code (HotelInfo >> Services >> Service >> Code ) with the Booking.com facility ID. HotelInfo >> Services >> Service Code .To get the Booking.com facility ID for a corresponding OTA code, see the Meta endpoint. |
instances | Contains multiple swimming pool instance details. | object | optional | - | |
> instance_id | Specifies individual swimming instance ID. | integer | optional | - | |
> swimming_pool_details | Contains individual swimming pool instance ID. | integer | optional | - | |
>> name | Specifies individual swimming pool names. | string | required | - | |
>> swimming_pool_type | Specifies whether the facility is present or missing. | string | required | Possible values are: UNKNOWN_POOL_TYPE, INDOOR, OUTDOOR, INDOOR_AND_OUTDOOR | |
>> availability_type | Specifies the pool's availability. | enumerated string | optional | Possible values are: UNKNOWN_AVAILABILITY, ALL_SEASON, SEASONABLE | |
>> allowed_age_type | Specifies the pool's age restrictions if any. | enumerated string | optional | Possible values are: UNKNOWN_AGE_TYPE, ADULTS_ONLY, KIDS_ONLY, ALL_AGES | |
>> has_loungers | Specifies whether the pool has loungers. | boolean | optional | Replaces the OTA HAC code 5076 (HotelInfo >> Services >> Service >> Code ). | |
>> has_water_slide | Specifies whether the pool has water slides. | boolean | optional | Replaces the OTA HAC code 5160 (HotelInfo >> Services >> Service >> Code ). | |
>> has_pool_bar | Specifies whether the pool has a bar. | boolean | optional | Replaces the OTA HAC code 5119 (HotelInfo >> Services >> Service >> Code ). | |
>> has_pool_cover | Specifies whether the pool has a cover. | boolean | optional | Replaces the OTA HAC code 5121 (HotelInfo >> Services >> Service >> Code ). | |
>> has_free_towels | Specifies whether there are free towels available. | boolean | optional | Replaces the OTA HAC code 5069 (HotelInfo >> Services >> Service >> Code ). | |
>> has_pool_toys | Specifies whether there are pool toys available. | boolean | optional | Replaces the OTA HAC code 5113 (HotelInfo >> Services >> Service >> Code ). | |
>> has_sun_umbrellas | Specifies whether there are sun umbrellas. | boolean | optional | Replaces the OTA HAC code 5077 (HotelInfo >> Services >> Service >> Code ). | |
>> has_fence_around_pool | Specifies whether the pool is fenced. | boolean | optional | Replaces the OTA HAC code 5122 (HotelInfo >> Services >> Service >> Code ). | |
>> has_snake_trap | Specifies whether the pool has a snake trap. | boolean | optional | Replaces the OTA HAC code 5119 (HotelInfo >> Services >> Service >> Code ). | |
>> is_shared | Specifies whether the pool is shared. | boolean | optional | ||
>> is_rooftop | Specifies whether the pool is on the roof top. | boolean | optional | Replaces the OTA HAC code 5114 (HotelInfo >> Services >> Service >> Code ). | |
>> is_shallow_end | Specifies whether the pool has a shallow end. | boolean | optional | Replaces the OTA HAC code 5120 (HotelInfo >> Services >> Service >> Code ). | |
>> is_infinity | Specifies whether it is an infinity pool. | boolean | optional | Replaces the OTA HAC code 5115 (HotelInfo >> Services >> Service >> Code ). | |
>> is_heated | Specifies whether the pool is heated. | boolean | optional | Replaces the OTA HAC code 49 (HotelInfo >> Services >> Service >> Code ). | |
>> is_salt_water | Specifies whether the pool is on salt water. | boolean | optional | Replaces the OTA HAC code 5117 (HotelInfo >> Services >> Service >> Code ). | |
>> is_pool_with_view | Specifies whether the pool has a view. | boolean | optional | Replaces the OTA HAC code 5116 (HotelInfo >> Services >> Service >> Code ). | |
>> is_plunge_pool | Specifies whether it's a plunge pool. | boolean | optional | Replaces the OTA HAC code 5118 (HotelInfo >> Services >> Service >> Code ). | |
schedule_details | Contains the schedule details for the swimming pool's operation. | object | optional | - | |
> schedule | Specifies opening times on a certain day of the week. | object | optional | - | |
>> from | Contains the start time of the opening hours. | object | optional | - | |
>>> hours | Specifies the start time in hours. | integer | required | - | |
>>> minutes | Specifies the start time in minutes. | integer | required | - | |
>> to | Contains the end time of the opening hours. | object | optional | - | |
>>> hours | Specifies the end time in hours. | integer | required | - | |
>>> minutes | Specifies the end time in minutes. | integer | required | - | |
>>> day_of_week | Specifies the day of the week. | enumerated string | required | Possible values are: UNKNOWN_DAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY Allows you to specify different operating hours depending on the days of the week. | |
temporarily_closed_details | Contains temporary closure information. | object | optional | - | |
> closed | Contains start and end dates of the closure information. | object | optional | - | |
> start_date | Contains the start of the closure. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure begins. | integer | optional | - | |
> end_date | Contains the end of the closure. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure ends. | integer | optional | - | |
surcharge_details | Contains the surcharge details. | object | optional | - | |
surcharge_type | Specifies the surcharge type. | string | optional | Possible values are: DEFAULT, FREE, PAID | Defaults to DEFAULT (When created using HDCN.) |
OnSiteDetails | Contains the details of the on-site facility. | enumerated string | optional | Possible values are: DEFAULT, ONSITE, OFFSITE | |
> KidsPoolDetails | Contains kid's pool details. | object | optional | ||
>> length | Specifies the kid's pool length. | number | optional | ||
>> width | Specifies the kid's pool width. | number | optional | ||
>> depth_min | Specifies the kid's pool minimum depth. | number | optional | ||
>> depth_max | Specifies the kid's pool maximum depth. | number | optional | ||
>> unit | Specifies the measurement unit. | number | optional | ||
> has_shallow_end | Specifies whether the pool has a shallow end. | boolean | optional |
Migrating Schedule details
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
schedule_details | Contains the schedule details for the swimming pool's operation. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes |
> schedule | Specifies opening times on a certain day of the week. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime |
>> from | Contains the start time of the opening hours. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start |
>>> hours | Specifies the start time in hours. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start HH |
>>> minutes | Specifies the start time in minutes. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Start MM (The hour part in the @Start value HH:MM) |
>> to | Contains the end time of the opening hours. | object | optional | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End (The minute part in the @Start value HH:MM) |
>>> hours | Specifies the end time in hours. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End HH (The hour part in the @End value HH:MM) |
>>> minutes | Specifies the end time in minutes. | integer | required | - | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @End (The minute part in the @End value HH:MM) |
>>> day_of_week | Specifies the day of the week. | enumerated string | required | Possible values are: UNKNOWN_DAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY Allows you to specify different operating hours depending on the days of the week. | FacilityInfo >> Restaurants >> Restaurant >> Features >> Feature >> OperationTimes >> OperationTime >> @Mon, @Tue, @Weds, @Thur, @Fri, @Sat, @Sun |
Migrating temporarily closed details
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
temporarily_closed_details | Contains temporary closure information. | object | optional | - | |
> closed | Contains start and end dates of the closure information. | object | optional | - | |
> start_date | Contains the start of the closure. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure begins. | integer | optional | - | |
> end_date | Contains the end of the closure. | object | optional | - | |
>> epoch_seconds | Specifies the time in seconds when the closure ends. | integer | optional | - | |
surcharge_details | Contains the surcharge details. | object | optional | - | |
surcharge_type | Specifies the surcharge type. | string | optional | Possible values are: DEFAULT, FREE, PAID | Defaults to DEFAULT (When created using HDCN.) |
Migrating Internet Services facility
Element | Description | Type | Required/ Optional | Notes | Parameter in HDCN |
---|---|---|---|---|---|
facility_id | Specifies the Booking.com facility ID. In this case, 47. | integer | required | - | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> Policies >> Policy >> FeePolicies >> FeePolicy >> TPA_Extensions >> InternetFeePolicy |
instances | Contains multiple swimming pool instance details. | object | optional | - | |
> payment_details | Specifies payment details. | integer | optional | - | |
>> charge_mode | Specifies the parking charge mode. | string | required | Possible values are: UNKNOWN_CHARGE_MODE, FREE, PAID, CHARGES_MAY_APPLY | |
> internet_details | Specifies internet service details. | object | optional | - | |
>> area | Specifies the connection location. | enumerated string | optional | Possible values are: UNKNOWN_COVERAGE, ALL_ROOMS, SOME_ROOMS, PUBLIC_AREAS, BUSINESS_CENTER, ENTIRE_PROPERTY | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> Policies >> Policy >> FeePolicies >> FeePolicy >> TPA_Extensions >> InternetFeePolicy >> @InternetCoverage |
>> type | Specifies the supported network type. | enumerated string | optional | Possible values are: NONE, WIRED, WIFI | OTA_HotelDescriptiveContentNotifRQ >> HotelDescriptiveContents >> HotelDescriptiveContent >> Policies >> Policy >> FeePolicies >> FeePolicy >> TPA_Extensions >> InternetFeePolicy >> @InternetType |
>> wifi_info | Specifies the network details. | object | optional | - | |
>>> network_name | Specifies internet network name. | string | optional | - | |
>>> speed_download | Specifies the supported internet download speed. | number | optional | - | |
>>> speed_upload | Specifies the supported internet upload speed. | number | optional | - |
Some OTA facility codes are grouped
Some of the legacy facility IDs were deprecated and replaced by Booking.com facility IDs.
Facility name | OTA code | Booking.com Facility ID |
---|---|---|
Indoor parking | 53 | 2 |
Valet Parking | 97 | 2 |
Accessible Parking | 116 | 2 |
Street Parking | 186 | 2 |
Secured Parking | 230 | 2 |
Swimming Outdoor all year | 5109 | 433 |
Swimming Outdoor seasonal | 5110 | 433 |
Swimming Indoor all year | 5111 | 433 |
Swimming Indoor seasonal | 5112 | 433 |
Pool towels | 5069 | 433 |