...
Each unit type can have a description, facilities, maximum number of guests, etc.
Integration Steps
Available Endpoints | |||||||
---|---|---|---|---|---|---|---|
|
| ||||||
|
|
Step 1: Fetching the Listing Updates
Make an API call to route
Status colour Blue title GET /v1/updates/listings
to fetch the latest listing updates.As this is a paginated API, you have to pass the following parameters:
Parameter | Description |
---|---|
| Each response |
contains a | |
| The maximum number of listing updates returned by API. (Maximum: |
If you are integrating with this API for the first time, the
cursor
parameter should be omitted. Every subsequent request should contain thecursor
that is provided to you in the previous call’snext
field. That way you can efficiently poll for listing updates that happened after the last successful pull.
...
Code Block |
---|
curl -X 'GET' \ 'https://chapi.bookiplyholidu.com/v1/updates/listings?cursor=asJ34sgt&limit=3' \ -H 'Accept: application/json' -H 'Authorization: Bearer SIGNED_JWT' |
...
Code Block | ||
---|---|---|
| ||
{ "updates": [ { "listingId": "21e63d96-41aa-471c-af61-965f85e7a22a", "listingUrl": "/listings/21e63d96-41aa-471c-af61-965f85e7a22a", "active": true, "version": "9" }, { "listingId": "706b9f81-9c3b-4c1b-8bf9-9ee4489d4b3e", "listingUrl": "/listings/706b9f81-9c3b-4c1b-8bf9-9ee4489d4b3e", "active": true, "version": "11" }, { "listingId": "2409f4e5-d4c8-4fda-a1a5-b5d49677191b", "listingUrl": "/listings/2409f4e5-d4c8-4fda-a1a5-b5d49677191b", "active": true, "version": "12" } ], "next": "RyNAJRykNaJRxJSMjIwtNQD1sykxRsjK0M" } |
Parameter | Description |
---|---|
| Unique id of the listing |
| The listing URL which can be used to fetch the listing |
| Boolean field.
|
| An unique identifier, specifying the update version in a global incremental series for every update. If the version is 20, this means that this is the 20th update on Listing or Pricing in our inventory |
Step 2: Processing the Listing Update
...
Code Block |
---|
curl -X 'GET' \ 'https://chapi.bookiplyholidu.com/v1/listings/21e63d96-41aa-471c-af61-965f85e7a22a' \ -H 'Accept: application/json' -H 'Authorization: Bearer SIGNED_JWT' |
...
Code Block | ||
---|---|---|
| ||
{ "listingId": "21e63d96-41aa-471c-af61-965f85e7a22a", "location": { "lat": 50.9293009, "lng": 5.9779776, "country": "Germany", "city": "Munich", "street": "Karlstrasse 66a", "postCode": "76133" }, "photos": [ { "id": "PHOTO-1", "url": "http://r-ec.bstatic.com/images/hotel/max500/149/14959242.jpg", "position": 1, "type": "INTERIOR", "size": { "width": 1920, "height": 1080 }, "photoTags": [ "String" ] } ], "facilitiesamenities": [ { "name": "SAUNA", "maxCount": 1, "privateUsage": true, "onDemand": true, "facilityCostextraCostsApply": false { } ], "priceunitTypes": [ 20, { "currencyunitTypeId": "EUR21e63d96-41aa-471c-af61-965f85e7a222", "mandatorylocalizations": [ true, { "includedInBasePrice": true, "costsApplicableTypelanguage": "PER_PERSONen", "payOnSitetitle": "La trueGrotta", "costApplicabledescription": [ "Die Appartament is located in the center of Bardolino...", { "arrivalInstructions": "Die Appartamen can be reached by train "from": "2022-04-26", via ...", "tocrucialInformation": "2022-04-26"Pets are not allowed ...", } ]"roomsAndAmenities": "The apartment has two rooms with WIFI ...", } "outdoorArea": "There }is a shared ],pool and a "unitTypes": [ private garden ...", { "unitTypeIdsurroundings": "21e63d96-41aa-471c-af61-965f85e7a222", "localizations": [ {A supermarket is near by ...", "languageadditionalInformation": "en",Cleaning on request for additional "title": "La Grotta", "description": "Die Appartament is located in the center of Bardolino...", "arrivalInstructions": "Die Appartamen can be reached by train via ...", "crucialInformation": "Pets are not allowed ...", "roomsAndAmenities": "The apartment has two rooms with WIFI ...", "outdoorArea": "There is a shared pool and a private garden ...", "surroundings": "A supermarket is near by ...", "additionalInformation": "Cleaning on request for additional fee ..." } ], "details": { "maxPersons": 4, "category": "STUDIO", "sizeInSqm": 100, "rooms": { "numberOfBedrooms": 2, "numberOfLivingrooms": 1, "numberOfBathrooms": 2, "configuration": [ { "roomId": "room1", "roomType": "BED_ROOM", "beds": [ { "type": "BED_SINGLE", "quantity": 1 } ] } ] }, "rules": { "checkInFrom": "11:00", "checkInTo": "11:00", "checkOutUntil": "11:00", fee ..." "minLeadTime":} { ], "durationdetails": 6, { "unitmaxPersons": "HOURS"4, }, "category": "STUDIO", "freeStayCutoffAgesizeInSqm": 2100, "petsAllowedrooms": true,{ "childrenAllowednumberOfBedrooms": true2, "babiesAllowednumberOfLivingrooms": true1, "partiesAllowednumberOfBathrooms": true 2, }, "cancellationPoliciesconfiguration": [ { "policyIdroomId": "STRICTroom1", "gracePeriodroomType": {"BED_ROOM", "durationbeds": 2, [ { "minCheckInOffset": 14, "refundPercenttype": 100,"BED_SINGLE", "unitquantity": "DAYS" 1 }, "paymentPolicies": [] } { ] "offset": 10}, "rules": { "percentagecheckInFrom": 100, "11:00", "referenceDateTypecheckInTo": "CHECKIN11:00", "unitcheckOutUntil": "DAYS11:00", "minLeadTime": { } ]"duration": 6, "periodsunit": "HOURS" [ }, { "freeStayCutoffAge": 2, "cutoffTimepetsAllowed": "MIDNIGHT_BEFORE_CHECKIN"true, "childrenAllowed": true, "offset": -30, "babiesAllowed": true, "refundPercentpartiesAllowed": true 50, }, "typecancellationPolicy": "CHECKIN", { "unitpolicyId": "DAYSSTRICT", "gracePeriod": { } ]"duration": 2, } "minCheckInOffset": 14, ] "refundPercent": }100, "facilities": [ { "unit": "DAYS" "name": "SAUNA" }, "maxCountpaymentPolicies": 1, [ { "privateUsage": true, "onDemandoffset": true10, "facilityCostpercentage": 100, { "pricereferenceDateType": 20"CHECKIN", "currencyunit": "EURDAYS", "mandatory": true, } "includedInBasePrice": true], "costsApplicableTypeperiods": "PER_PERSON", [ { "payOnSite": true, "costApplicablecutoffTime": ["MIDNIGHT_BEFORE_CHECKIN", { "offset": -30, "fromrefundPercent": "2022-04-26", 50, "totype": "2022-04-26"CHECKIN", }"unit": "DAYS" ]} }] } ]}, "photosamenities": [ { "id": "PHOTO-1", "url": "http://r-ec.bstatic.com/images/hotel/max500/149/14959242.jpgname": "LINEN", "positionmaxCount": 1, "typeprivateUsage": "INTERIOR"null, "sizeonDemand": { true, "widthextraCostsApply": 1920, true } ], "heightphotos": 1080 [ { }"id": "PHOTO-1", "photoTagsurl": [ "http://r-ec.bstatic.com/images/hotel/max500/149/14959242.jpg", "Stringposition": 1, ] "type": "INTERIOR", } ],"size": { "extraCosts": [ "width": 1920, { "typeOfExtraCostheight": "LINEN",1080 "costsApplicableType": "PER_PERSON_PER_WEEK"}, "pricephotoTags": [ 10, "currency": "EURString", "isMandatory": true,] } "payOnSite": false, ], "costApplicableextraCosts": [ [ { { "typeOfExtraCost": "LINEN", "fromchargeCycle": "2022-04-26",PER_PERSON", "price": 10, "tocurrency": "2022-04-26EUR", "type": "MANDATORY", } ]"paymentTime": "ON_SITE" } ], "reviews": [ { "reviewId": "REVIEW-1", "reviewCreation": "2021-12-23T15:17:59.136Z", "arrivalDate": "2022-04-26", "headline": "Best Finca in Germany", "language": "en", "text": "Really nice Finca.", "textPositive": "Beautiful Garden. Plenty Sunlight.", "textNegative": "There is no tea kettle.", "score": 4.2 } ] } ], "details": { "storey": 1, "sizeOfPlot": 140.5, "buildYear": 2001, "modernizedYear": 2007, "license": "123-456789", "classification": "FOUR_STARS", "mainResidence": "PRIMARY" } } |
Sync Frequency
To have the latest details for the listings, partners should poll the listing updates regularly. The listing updates API can be polled up to the interval provided in the Rate limiting. We recommend polling it at least every minute.
...