Discussions

Ask a Question
ANSWERED

Changes for API https://api.lodgify.com/v1/reservation?

During development, we have extensively checked why the bookings are not being transferred via the API. In doing so, we found that we are addressing the API via the following endpoint: <https://api.lodgify.com/v1/reservation>. We currently no longer find this end point in your documentation. Is it possible that this endpoint was changed or removed around 7/7/2023? Thanks & Regards
ANSWERED

Data coming with a delay

For fetching the reservations, We are using below api api url - <https://api.lodgify.com/v1/reservation?propertyId=262363&modifiedSince=2023-05-22&offset=0&limit=50> But data is coming with a delay of 1 hour. I am sharing one reservation json for your reference:- reservationId - 6572895 createdAt - 2023-05-23T22:06:18 With the above api, We are not able to fetch this reservation immediately. Please let us know the reason for the delay and a way to improve this.
ANSWERED

API v2 - "List of bookings" does not display all reservations

Hello, I hope this message finds you well. I wanted to discuss an issue I have encountered while using the "List of bookings" query function in the Lodgify API v2 for my personal dashboard. The problem arises when I try to filter the bookings by property or period to display the required information. Depending on the value of the "**stayFilter**" parameter, whether it is set to "**All**" or left empty, the batch of bookings returned can vary significantly. To illustrate this issue, here is the code snippet I am using and the resulting output: ``` reservations = [] url1 = "https://api.lodgify.com/v2/reservations/bookings?page=1&size=999999&includeCount=true&stayFilter=All&includeTransactions=true&includeExternal=true&includeQuoteDetails=true" url2 = "https://api.lodgify.com/v2/reservations/bookings?page=1&size=999999&includeCount=true&includeTransactions=true&includeExternal=true&includeQuoteDetails=true" headers = { "accept": "application/json", "X-ApiKey": env('LODGIFY_API_KEY') } response1 = requests.get(url1, headers=headers) response2 = requests.get(url2, headers=headers) list1 = response1.json()["items"] list2 = response2.json()["items"] common = [d for d in list1 if d in list2] only_in_response1 = [d for d in list1 if d not in list2] only_in_response2 = [d for d in list2 if d not in list1] print("########################################") print("Common elements: ", len(common)) print("Only response1: ", len(only_in_response1)) print("Only response2: ", len(only_in_response2)) print("########################################") ``` And here are the printed results: ``` ######################################## Common elements: 48 Only list 1: 52 Only list 2: 6 ######################################## ``` This discrepancy raises the following question: Why is there a difference in the number of bookings returned, ranging from 6 to 52, based on the "stayFilter" parameter? I would expect that setting it to "All" or leaving it empty would yield the same results. This inconsistency poses a challenge for me since I have to make two API calls each time and combine both batches of bookings to obtain the accurate total number of reservations. I have examined the arrival and departure dates to see if they might explain the variations, but as shown in the detailed print, there doesn't appear to be a clear correlation : ``` ######################################## Common elements: Arrival : 2023-07-01 Departure : 2023-07-01 Arrival : 2023-07-08 Departure : 2023-07-08 Arrival : 2023-08-05 Departure : 2023-08-05 Arrival : 2023-08-12 Departure : 2023-08-12 Arrival : 2023-09-10 Departure : 2023-09-10 Arrival : 2023-07-22 Departure : 2023-07-22 Arrival : 2023-09-04 Departure : 2023-09-04 Arrival : 2023-07-09 Departure : 2023-07-09 Arrival : 2023-07-12 Departure : 2023-07-12 Arrival : 2023-07-02 Departure : 2023-07-02 Arrival : 2023-07-29 Departure : 2023-07-29 Arrival : 2023-08-07 Departure : 2023-08-07 Arrival : 2023-07-29 Departure : 2023-07-29 Arrival : 2023-07-01 Departure : 2023-07-01 Arrival : 2023-08-01 Departure : 2023-08-01 Arrival : 2023-07-13 Departure : 2023-07-13 Arrival : 2023-07-07 Departure : 2023-07-07 Arrival : 2023-07-01 Departure : 2023-07-01 Arrival : 2023-07-22 Departure : 2023-07-22 Arrival : 2023-07-13 Departure : 2023-07-13 Arrival : 2023-08-05 Departure : 2023-08-05 Arrival : 2023-08-05 Departure : 2023-08-05 Arrival : 2023-07-13 Departure : 2023-07-13 Arrival : 2023-07-05 Departure : 2023-07-05 Arrival : 2024-06-22 Departure : 2024-06-22 Arrival : 2023-08-19 Departure : 2023-08-19 Arrival : 2023-08-23 Departure : 2023-08-23 Arrival : 2023-07-26 Departure : 2023-07-26 Arrival : 2023-08-05 Departure : 2023-08-05 Arrival : 2023-07-09 Departure : 2023-07-09 Arrival : 2023-07-06 Departure : 2023-07-06 Arrival : 2023-08-06 Departure : 2023-08-06 Arrival : 2023-07-29 Departure : 2023-07-29 Arrival : 2023-08-21 Departure : 2023-08-21 Arrival : 2023-09-02 Departure : 2023-09-02 Arrival : 2023-08-26 Departure : 2023-08-26 Arrival : 2023-06-26 Departure : 2023-06-26 Arrival : 2023-08-25 Departure : 2023-08-25 Arrival : 2023-08-29 Departure : 2023-08-29 Arrival : 2023-08-19 Departure : 2023-08-19 Arrival : 2023-10-25 Departure : 2023-10-25 Arrival : 2023-07-22 Departure : 2023-07-22 Arrival : 2023-07-15 Departure : 2023-07-15 Arrival : 2023-07-15 Departure : 2023-07-15 Arrival : 2023-07-15 Departure : 2023-07-15 Arrival : 2023-07-01 Departure : 2023-07-01 Arrival : 2023-08-19 Departure : 2023-08-19 Arrival : 2023-07-17 Departure : 2023-07-17 ######################################## Only response1: Arrival : 2023-04-10 Departure : 2023-04-10 Arrival : 2023-05-18 Departure : 2023-05-18 Arrival : 2023-05-27 Departure : 2023-05-27 Arrival : 2023-06-03 Departure : 2023-06-03 Arrival : 2023-06-15 Departure : 2023-06-15 Arrival : 2023-06-22 Departure : 2023-06-22 Arrival : 2023-06-11 Departure : 2023-06-11 Arrival : 2023-04-10 Departure : 2023-04-10 Arrival : 2023-05-27 Departure : 2023-05-27 Arrival : 2023-04-16 Departure : 2023-04-16 Arrival : 2023-05-19 Departure : 2023-05-19 Arrival : 2023-05-01 Departure : 2023-05-01 Arrival : 2023-04-23 Departure : 2023-04-23 Arrival : 2023-04-28 Departure : 2023-04-28 Arrival : 2023-04-25 Departure : 2023-04-25 Arrival : 2023-04-29 Departure : 2023-04-29 Arrival : 2023-05-12 Departure : 2023-05-12 Arrival : 2023-05-05 Departure : 2023-05-05 Arrival : 2023-05-20 Departure : 2023-05-20 Arrival : 2023-05-08 Departure : 2023-05-08 Arrival : 2023-05-19 Departure : 2023-05-19 Arrival : 2023-05-22 Departure : 2023-05-22 Arrival : 2023-05-08 Departure : 2023-05-08 Arrival : 2023-05-10 Departure : 2023-05-10 Arrival : 2023-05-12 Departure : 2023-05-12 Arrival : 2023-05-17 Departure : 2023-05-17 Arrival : 2023-05-21 Departure : 2023-05-21 Arrival : 2023-06-02 Departure : 2023-06-02 Arrival : 2023-05-17 Departure : 2023-05-17 Arrival : 2023-05-25 Departure : 2023-05-25 Arrival : 2023-06-09 Departure : 2023-06-09 Arrival : 2023-05-27 Departure : 2023-05-27 Arrival : 2023-05-18 Departure : 2023-05-18 Arrival : 2023-05-28 Departure : 2023-05-28 Arrival : 2023-05-29 Departure : 2023-05-29 Arrival : 2023-05-25 Departure : 2023-05-25 Arrival : 2023-05-29 Departure : 2023-05-29 Arrival : 2023-05-26 Departure : 2023-05-26 Arrival : 2023-05-26 Departure : 2023-05-26 Arrival : 2023-05-30 Departure : 2023-05-30 Arrival : 2023-06-01 Departure : 2023-06-01 Arrival : 2023-05-31 Departure : 2023-05-31 Arrival : 2023-06-01 Departure : 2023-06-01 Arrival : 2023-06-06 Departure : 2023-06-06 Arrival : 2023-06-18 Departure : 2023-06-18 Arrival : 2023-06-06 Departure : 2023-06-06 Arrival : 2023-06-07 Departure : 2023-06-07 Arrival : 2023-06-08 Departure : 2023-06-08 Arrival : 2023-06-09 Departure : 2023-06-09 Arrival : 2023-06-11 Departure : 2023-06-11 Arrival : 2023-06-20 Departure : 2023-06-20 Arrival : 2023-06-21 Departure : 2023-06-21 ######################################## Only response2: Arrival : 2023-09-19 Departure : 2023-09-19 Arrival : 2024-05-18 Departure : 2024-05-18 Arrival : 2023-07-13 Departure : 2023-07-13 Arrival : 2023-07-01 Departure : 2023-07-01 Arrival : 2023-06-27 Departure : 2023-06-27 Arrival : 2023-07-15 Departure : 2023-07-15 ######################################## ``` I would greatly appreciate your assistance in resolving this issue. If you require any additional information, please don't hesitate to let me know. Thank you in advance for your help.
ANSWERED

Failed Reservations due to not being Available - PM Air Concierge

Dear Lodgify Team, I contact you because we have tried some bookings for PM Air Concierge (PMS Account ID: 284272) but they are failing due to the following error message from your end: "message": "Reservation Fail. /// PRODUCT_IS_NOT_AVAILABLE_ON_PMS_SIDE" We have checked the feed we are receiving from your end, and we have realized that we received open dates from your end for the corresponding date ranges before the bookings came in. Could you please check why you are sending us open dates, but then rejecting the bookings due to no availability? - BookingPal Reservation #1: 285959734 Booking Date: 05/25/2023 20:21:57 UTC Property ID: 1235382142 (462968) Check-in: 10.01.23 Check-out: 10.04.23 - BookingPal Reservation #2: 287564292 Booking Date: 06/09/2023 19:25:04 UTC Property ID: 1235382142 (462968) Check-in: 09.19.23 Check-out: 09.22.23 - BookingPal Reservation #3: 287565537 Booking Date: 06/09/2023 19:37:36 UTC Property ID: 1235425739 (487786) Check-in: 08.16.23 Check-out: 08.19.23 In advance, thank you very much Kind regards!!!
ANSWERED

is_replied doesn't get updated at "Booking level"

Hi there, I need to know which tenant's messages remain unanswered through an API query that I can execute every minute, for example. I came across this API function (<https://docs.lodgify.com/reference/bookingslist-1>) that provides me with all bookings. In the response, there is an "is_replied" parameter within each booking's dictionary. However, I've noticed that this parameter isn't consistently updated at the "booking level." Many of my reservations are marked as "is_replied = false" even though they have been replied to, often for a certain period of time. Since this parameter isn't reliable, I have to loop through all reservations each time and use this function (<https://docs.lodgify.com/reference/getbookingbyid-1>) to check the booking's messages in detail and determine if the last message is from us or the tenant. This process consumes a significant amount of time and resources since I have to make multiple API calls (for each reservation) to accomplish this. Is there a more efficient way to obtain the unanswered tenant's messages without having to make multiple API calls for each reservation? Thank you for your assistance.
ANSWERED

Can't assign property to website

Trying to assign a new property to the website. An error reading "website with ID 0 was not found" when I click on the "assign to website" button. How do I fix this?
ANSWERED

Create housing

How can i create a housing ? Which route? I don't see the post method.
ANSWERED

Is it possible to batch upload properties using your public API? or at least import using spread sheet?

Is it possible to batch upload properties using your public API? or at least import using spread sheet? and how many properties does your product support at most?

Get all amenities from the API

Hi, I'm wondering how can I get the amenities list from the API. For example, the OVEN is called rental.amenities.amenities-picker.amenity-oven in the app.lodgify.com HTML source. When I call v2/properties/{id}/rooms, I get this name for the OVEN : CookingEatingOven. Is there a way to get all available amenities (even those with no properties)? I would like to be able to get all names, for each amenities (CookingEatingOven, CookingEatingRefrigerator, etc.) Thank you,
ANSWERED

Property info min_price & max_price not reflective of PriceLabs

When calling the property info endpoint (<https://docs.lodgify.com/reference/getpropertybyidv2>), the fields for min_price and max_price are not accurate. With the following call, I get the subsequent data: (CALL) curl --request GET --url '<https://api.lodgify.com/v2/properties/449807?includeInOut=false>' --header 'X-ApiKey: REDACTED' --header 'accept: application/json' (DATA) { "min_price": 233.47030257751214, "original_min_price": 250, "max_price": 280.1643630930146} In PriceLabs, and in my Lodgify Calendar, there are several dates that are in the $4-500's. Am I misinterpreting the API or is this a bug with PriceLabs integration. If I'm misinterpreting it, is there an endpoint I get call to get a minimum and maximum price for a particular house? (without having to loop through all prices myself) Thanks in advance!