Get ARI data
Full push
After you created and enabled the subscription, apaleo will push a full update of all the ARI data to the configured endpoint URL.
It is important that you immediately acknowledge the ARI push and return a successful response. Don’t try to process ARI data before you acknowledge it; this can lead to timeouts. Subscriptions that are failing for more than 1 week will be automatically disabled.
This is how an example entry looks like:
{
"accountId": "XYZX",
"propertyId": "MUC",
"timeSlices": [
{
"from": "2018-11-17T09:00:00+02:00",
"to": "2018-11-18T08:00:00+02:00",
"ratePlanId": "MUC-NONREF_DBL",
"unitGroupId": "MUC-DBL",
"available": 23,
"prices": [
{
"adults": 1,
"price": {
"grossAmount": 123,
"beforeTax": 114.95,
"afterTax": 129.84,
"taxes": {
"vat": 8.05,
"cityTax": 6.84
},
"currency": "EUR"
}
},
{
"adults": 2,
"price": {
"grossAmount": 170,
"beforeTax": 158.88,
"afterTax": 179.45,
"taxes": {
"vat": 11.12,
"cityTax": 9.45
},
"currency": "EUR"
}
}
],
"restrictions": {
"minAdvanceBookingPeriod": "P1M",
"maxAdvanceBookingPeriod": "P1M14DT12H",
"closed": true,
"closedOnArrival": false,
"closedOnDeparture": false,
"minLengthOfStay": 2,
"maxLengthOfStay": 8
}
}
]
}
FIELDS | MANDATORY | DESCRIPTION |
---|---|---|
accountId | yes | The account ID identifies an apaleo customer. |
propertyId | yes | The propertyId is unique within one apaleo account. The combination of accountId and propertyId is globally unique. |
timeSlices | yes | List of time periods for one rate plan and unit group combination with availability, prices, and restrictions. You will at least receive one time slice always. |
from | yes | The start of the time slice. |
to | yes | The end of the time slice. For standard overnight hotel business, this defines the time range for the night. In the example above, it would be the night from November 17th to November 18th. Most channels consider this the night of November 17th. |
ratePlanId | yes | The ID of the rate plan in apaleo, which is unique per account. |
unitGroupId | yes | The ID of the unit group in apaleo, which is unique per account. The equivalent for the apaleo unit group in channels can be room type, room category or inventory type. |
available | yes | Number of units available for the unit group during this night. apaleo has shared inventory, so all rate plans selling this unit group on that night will have the same number. |
prices | no | List of prices including all service fees for breakfast etc. You will receive one price for each allowed occupancy. apaleo currently does not push special prices for children. |
restrictions | yes | Restrictions set for this night. The ‘length of stay’ restrictions are arrival-based, and they are optional. The closed on arrival restriction should be applied for the start of the time slice and closed on departure for the end of the time slice. The closed restrictions will always be sent. If no rate is set for this night in apaleo, the ‘master closed’ restriction will be set. |
Prices
The prices field will not be set if:
- no rate is set for this night
- the rate is closed
- the rate plan is not bookable because of its booking period restrictions
- the rate plan is not available on the requested channel (typically, ChannelManager)
We send the price in different variants. It is up to you to pick the values that you want to process, show to bookers or forward to distribution channels.
- grossAmount: Net price plus VAT, but excluding any other fees or taxes
- beforeTax: Net price. No VAT, no other taxes
- afterTax: Net price plus VAT plus city tax
VAT contains all of the VAT, for rooms, extra services and other fees and taxes. That means the VAT percent applied can be a mix of different VATs (for example, 7% on the room price and 19% on breakfast).
Read the city tax guide for more information.
Prices do not include services that are set up in the rate plans as additional . Those services will automatically be booked as extras when booking such rate plans, and they cannot be removed. An example would be a cleaning fee at the end of the stay. No other additional action is required from your side to make this work. If you also have an IBE based on ARI data, display the amount of the additional services to the guests. This should be done by having a configuration of those additional services on your side.
Delta push
apaleo also keeps track of the data already sent to you for a subscription, calculates the difference and sends the data which changed since the last successful update. You will receive delta push as soon as the data was changed (minor delays are possible).
To know if an update was successful, we rely on you: Acknowledge successful receptions with a 2xx status code. If you don’t, things will get messy, as your truth and our truth will diverge.
The delta is calculated for the following fields:
FIELDS | DESCRIPTION |
---|---|
available | Only if the number of available units for this night changed, it will be sent. |
prices | If one out of the prices changed, you will again receive the whole list of prices. |
restrictions | If one of the restrictions changed, you will receive the whole set of current restrictions. If a rate in apaleo was removed, and a certain night was made unsellable, you will not receive prices, but the master closed restriction. |
Full sync
You can trigger a full sync to recover from chaos, but better try avoiding it. You can request a full push by calling:
PUT /v1/subscriptions/{id}/trigger-full-sync
Please note that apaleo cannot trigger a full-sync on property’s behalf. You need to use this endpoint for full refresh.