Availability
Overview
A Supplier defines the available times or time slots and dates for a tour or attraction as well as the amount of customers that can can be booked.
FreeSale tickets and entry passes are available during the opening hours of the attraction and there is generally no limit on the amount of tickets. Reserved rates can be with or without capacity depending on the requirements and inventory defined by the Supplier.
Whenever a Reseller requests availability of products or rates bound to their channel through the Booking API, Redeam return availability from the Redeam Availability Cache.
It is important to make an Availability call prior to a hold to ensure you have the latest up to date information. This last minute availability check will increase your success rate on holds and bookings
Traveler Type Availability
The Booking API can accept a query parameter that indicates the reseller is willing to receive ageBand-level availability. The query parameter is named granularity
and it accepts value as either travelerType
or rate.
If the query parameter has value travelerType
the availability data is broken down at ageBand-level as shown in example shown below:
{
"availability": [
{
"capacity": 19,
"end": "2023-08-17T00:15:00Z",
"id": "472239-20230816-2000",
"maxCapacity": -1,
"start": "2023-08-17T00:00:00Z",
"unit_id": "472240"
},
{
"capacity": 19,
"end": "2023-08-17T00:15:00Z",
"id": "472239-20230816-2000",
"maxCapacity": -1,
"start": "2023-08-17T00:00:00Z",
"unit_id": "472241"
}
]
}
If the query parameter is absent or has value rate
, then
- any ageBand-level availability will be rolled up into rate-level availability. This will be done by locating any ageBand-level availability within a given set of data, finding the one with the smallest capacity number, and replacing all the ageBand-level avails with a single replacement avail object which will have that smallest capacity number on it.
- the availability object will contain an extension map representing the rolled-up information.
- the rolled-up availability will have a special availability id with
GENERATED-ID:
prefix.
An example is shown below:
{
"availability": [
{
"capacity": 19,
"end": "2023-08-17T00:15:00Z",
"extensions": {
"unit:472240": "472239-20230816-2000",
"unit:472241": "472239-20230816-2000"
},
"id": "GENERATED-ID:f47fc8b4-62ac-4868-93a4-862630ae5994",
"maxCapacity": -1,
"start": "2023-08-17T00:00:00Z"
}
]
}
In case the supplier doesn't support availabilities at travelerType-level, the get Availability call will always return availability at rate-level
Redeam Availability Cache
The Redeam Availability Cache serves two primary functions
- guarantee a response time of under 2 seconds
- decrease network traffic to reservation systems
Redeam pulls bound product and rate availability from connected Suppliers based on schedules provided by the Supplier through their system and the nature of the tour or attraction. Availability data is stored and used to respond to availability requests from Resellers.
When a availability request from the Reseller hits the Redeam Availability Cache, the availability data is returned straight to the Reseller. However, if the availability cache data is older than 5 minutes, Redeam will pull availability data from the Supplier and this newly pulled availability data gets returned to the Reseller and refreshes the Redeam Availability Cache data.
Transaction Flow Diagram
