Accommodation Workflow - noi-techpark/odh-docs GitHub Wiki

The complete Accommodation data

  • all properties for Accommodation base data
  • rooms from sources LTS and HGV,
  • full Imagegallery with all Images
  • Availablity Search funtionality

is only returned when a valid Token with the right permission is passed to ODH.

Accommodation Base data (static information)

The Accommodation Base data is retrieved from LTS TIC Web.
TIC Web helds also the information which ID the Accommodation has on the HGV System.
Not every Accommodation is available on the HGV System. At the moment whe have approximately 10.000 Accommodations on the LTS System and 2500 available also on the HGV System.
"A0RID": "b99e6e565478234782adfsdsfa150b0b" is the LTS ID
"HGVId": "12488", is the HGV ID
The Accommodation Base data does NOT include any pricing information.
On Accommodation Base data all rooms that are available are listed in the section AccoRoomInfo with the information where this data comes from
example:

AccoRoomInfo: [
{
Id: "30BA97D92CEDF6E641ASDF3E626",
Self: "https://tourism.opendatahub.bz.it/v1/AccommodationRoom/30BA97D92CEDF6E641ASDF3E626",
Source: "lts"
}]

Accommodation Room data (static information)

The Accommodation room data is retrieved from LTS TIC Web.
For each Accommodation that is available on HGV also the room data of Source HGV is added to ODH.
ODH lets is up to the data consumer to decide which room data should be used.
The room data of an Accommodation between this two sources can differ.
Rooms from source "hgv" have a static Price information for example "PriceFrom": 75 which is helpful to give an indication what the price range is.
Rooms from source "lts" does NOT have this price information.
To avoid confusion we recommend this strategy: Use rooms from source HGV for each Accommodation available on the HGV System, otherwise use rooms of source LTS.

Availability Search

The Availablility Search Result can be requested with or without accommodation base data. When the Availability Search is requested with the accommodation base data the result is wrapped in the Object MssResponseShort.
A empty object means there is no availability for this Accommodation.
In General an Availability Search can be done with a low detail grade detail=0 (for displaying an availablity search result on a list) or high detail grade detail=1 (which returns detailed room informations like descriptions and images).

There are more possibilities to get the availability of the Accommodations:

  • using the /v1/Accommodation Endpoint (List). Use the filters offered by this endpoint and get the Availability from HGV/LTS (with base data)
  • using the /v1/Accommodation/{id} Endpoint (Single) get the Availability from HGV/LTS for a single Accommodation (with base data)
  • /v1/AccommodationAvailable (POST) Pass the Ids of the Accommodations to check and get Accommodation Base data with the Availability from HGV/LTS ( (with/without base data))
  • /v1/AvailabilityCheck (POST) Pass the Ids of the Accommodations to check and get the Availability Inforamtion from HGV/LTS only (No accommodation base data)

Availability Search HGV

An Availability Search on the HGV System produces a Response where all online bookable (on Booking Southtyrol) Accommodations are listed. All available Accommodations in the requested period on the HGV System are returned and can be booked online. An availability search can be done The Response includes (with detail:1)

  • room prices
  • room quantity
  • descriptions
  • room images
  • valid room combinations (if more rooms are requested, with consideration the available room quantity)

Availability Search LTS

An Availability Search on the LTS System produces a Response where all available Accommodations on the LTS System in the requested period are included. This means the Accommodation is available on request (Inquiry, or by contacting the Accommodation). The Response includes (with detail:1)

  • room prices
  • room quantity
  • descriptions
  • valid room combinations (if more rooms are requested, with consideration the available room quantity)

Note: In difference to HGV Availability Check the LTS Service is NOT returning Room Images. The Room Images of the base room data has to be used.

An Accommodation can be available on the HGV and LTS System with different prices, the overall strategy is online bookability over availability on request.

How LTS and HGV is syncing information

The TIC Web and the HGV System is usually in sync. However it can occur some data mismatch.

Performance of the Availability Search

The Performance of the availability search depends from the response times of the provider HGV & LTS.
General Recommendations:
Avoid performing Availability Searches over all Accommodations, especially the LTS System (has 10k Accommodations to check) takes a lot of time. The HGV System in this case produces better results because it makes use of a Cache (by passing parameter without mssids=true) but consider that it has a significantly lower amount of Accommodations to check.
Use Caching where it is possible.
Reduce the amount of Accommodations to check.
Request only what you are able to show as result (Example when a certain amount of Accommodations is requested and the probability of getting over 20 Online Bookable Results is high do not request LTS Availability)

FAQ:

When is an Accommodation available on HGV/Booking Suedtirol

An Accommodation is available on Booking Suedtirol when it has a

  • HgvId
  • Property AccoBookingChannel
AccoBookingChannel: [
{
Id: "hgv",
Pos1ID: "2",
BookingId: "12700",
Portalname: "HGV Booking"
}
],
  • IsBookable: true ODH Requests which does this queries at example
    https://tourism.opendatahub.bz.it/v1/Accommodation?rawfilter=isnotnull(HgvId)
    https://tourism.opendatahub.bz.it/v1/Accommodation?rawfilter=in(AccoBookingChannel.[*].Portalname,"HGV Booking")
    https://tourism.opendatahub.bz.it/v1/Accommodation?rawfilter=eq(IsBookable,true)

Does an Accommodation have static prices

The accommodation base information itself has **NO **prices.

The Accommodation has an image on Booking South Tyrol but not on ODH

Syncing issue between ODH and LTS OR
Syncing issue between LTS and HGV

I want a list of Accommodations that are not bookable on HGV

This query should do it:
https://tourism.opendatahub.bz.it/v1/Accommodation?rawfilter=nin(AccoBookingChannel.[*].Portalname,%22HGV%20Booking%22)

Suedtirol.info shows some room pricing information even when no availablity search is done

The static price information of the HGV Room is shown "PriceFrom"

Strategy when to show rooms of which source?

If an accommodation is available on the HGV System we recommend to show the room information from source HGV.

Problems with different sources room information

At example when an accommodation is not available for the requested period on the HGV System but it is available on request by the LTS Availability check, LTS returns all room information from the LTS System

How is a the valid room combination calculated

If more rooms are requested ODH calculates the cheapest room combinations available. If more rooms are requested the HGV and the LTS System returns offers for both rooms shown in the property RoomSeq. It could occur that Room A is offered in offer 1 and offer 2 but is available only 1 time. So Room A can only be used one time in the combination calculation.
ODH represents all valid combinations in the object CheapestOfferDetail

"CheapestRoomCombinationDetail": [
                {
                  "RoomId": "49551",
                  "RoomSeq": 1,
                  "Price": 313,
                  "RoomFree": 1
                },
                {
                  "RoomId": "49552",
                  "RoomSeq": 2,
                  "Price": 313,
                  "RoomFree": 1
                }
              ],
              "Service": "ws",
              "Price": 626
            }