Hostfully’s open API made it possible to list the same property as a variant on multiple sites.
Philippe Pieri is the co-founder of World Guests Abroad (WGA), an umbrella company that manages three vacation rental brands: Paris For Rent, Paris Luxury Rentals, and Haven In. All three brands attract reservations through polished direct booking sites and repeat guests, as well as traditional vacation rental distribution channels like Airbnb, Vrbo and Booking.com
Ranging from boutique downtown Paris apartments to luxury flats at the base of the Eiffel Tower, and villas overlooking the Adriatic, WGA’s portfolio of short-term rentals is both large and diversified. To get around this challenge, WGA uses automation through tech to manage the portfolio and scale it. Given that all WGA’s co-founders have a background in San Francisco and technology, it’s no surprise that.
Paris For Rent was founded in 1998, and as the name suggests, manages short-term and vacation rentals in Paris, France. Like most vacation rental management companies (VRMCs), Paris For Rent started small and paralleled the explosive growth of the industry. Realizing the potential of the luxury rental market, the same co-founders eventually created Paris Luxury Rentals.
Immediately, challenges surrounding the expansion became apparent. For starters, most property management software (PMS) can only manage one set of portfolios. On its own, this was an easy obstacle to solve: run each company on its own PMS even though should be centrally managed. The biggest challenge faced by Philippe and his colleagues surrounded distribution. Some listings from ParisForRent.com were luxury rentals which meant they should also be listed on ParisLuxuryRentals.com, and vice versa. At the time, all the vacation rental management platforms’ used closed API which meant that clients couldn’t independently access their booking and management data. But for Paris For Rent and Paris Luxury Rentals to be managed from one platform, an open API was required to unify both data sets.
Through connections in the tech world, Philippe became aware of Hostfully – a San Francisco startup that was offering a Property Management Platform (PMP) built on open API. Philippe immediately saw the potential: with open API he’d be able to unify both companies as well as centrally manage all properties on one dashboard and management system.
To secure bookings from ParisForRent.com and ParisLuxuryRentals.com but also sync them with reservations from vacation rental listing sites, WGA created their own direct booking site widget. With the open API available to WGA, they were able to contract out that work and quickly implement a booking calendar.
As WGA continued to expand its portfolio of properties, so did its software requirements. But since WGA was using the Hostfully PMP and API, creating custom solutions was relatively straightforward. Philippe summarizes the joint effort as follows “when we’d come up with a feature request, we’d send Hostfully’s development team an email. Based on how many other property managers requested the same feature, they’d give us an idea of when it would be released. However, when it came to niche requirements only we needed, we’d subcontract Hostfully to build a custom integration.”
Here are a few examples of custom integrations unique to WGA built by the Hostfully development team that rely on open API:
With Hostfully managing WGA’s entire portfolio on one dashboard, Philippe and his co-founders started looking at expansion. As Philippe puts it: “The brand names Paris For Rent and Paris Luxury Rentals limited our geographic expansion. Since we already had two sites running off Hostfully’s API, we knew adding a third broader brand wouldn’t be much effort.” This led WGA acquiring Haven In. Similar to Paris For Rent and Paris Luxury Rentals, Haven In converts visitors into guests with high-quality images and engaging listings – all managed from the same Hostfully PMP dashboard. Because of the open API, it’s possible to list properties on one, two or all three sites.
Going forward, WGA now has a track record of acquiring and bringing to market vacation rental booking sites, all backed by the Hostfully PMP and API. As Philippe noted: “Now we know that buying a new website and integrating it into our business model quickly is possible. The barrier has been lowered when it comes to future acquisitions. With Hostfully and the API, nothing stops us from running two or three more brands”
Hostfully’s industry-leading and award-winning property management platform (PMP) is built on top of an open API designed by developers for developers. Customers with Premium accounts can import and export their own vacation rental management data and create powerful custom software solutions unique to their businesses. Philippe and WGA showcase how the Hostfully API and its PMP facilitate multi-site sync. However, the open API can also communicate and exchange:
Standard and custom amenities
Custom fees, pricing data
Guest profiles
Cleaning jobs and work orders
Booking leads
Webhooks
Local recommendations (includes geodata)
Guest messaging
Photos
House rules
Reviews
Cookie | Duration | Description |
---|---|---|
__stripe_mid | 1 year | Stripe sets this cookie cookie to process payments. |
__stripe_sid | 30 minutes | Stripe sets this cookie cookie to process payments. |
_wpfuuid | 1 year 1 month 4 days | This cookie is used by the WPForms WordPress plugin. The cookie is used to allows the paid version of the plugin to connect entries by the same user and is used for some additional features like the Form Abandonment addon. |
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
cookielawinfo-checkbox-analytics | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category . |
cookielawinfo-checkbox-functional | 1 year | The cookie is set by the GDPR Cookie Consent plugin to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category . |
cookielawinfo-checkbox-others | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others". |
cookielawinfo-checkbox-performance | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Performance". |
CookieLawInfoConsent | 1 year | CookieYes sets this cookie to store the user consent. |
elementor | never | This cookie is used by the website's WordPress theme. It allows the website owner to implement or change the website's content in real-time. |
viewed_cookie_policy | 1 year | CookieYes set this cookie to keep track of whether the user has approved the use of cookies. |
Cookie | Duration | Description |
---|---|---|
_hjAbsoluteSessionInProgress | 30 minutes | Hotjar sets this cookie to track the beginning of the user's journey for a total session count. It does not contain any identifiable information. |
_hjIncludedInPageviewSample | 2 minutes | Hotjar sets this cookie to know whether that visitor is included in the data sampling defined by your site's pageview limit. |
li_gc | 5 months 27 days | Linkedin set this cookie for storing visitor's consent regarding using cookies for non-essential purposes. |
lidc | 1 day | LinkedIn sets the lidc cookie to facilitate data center selection. |
UserMatchHistory | 1 month | LinkedIn sets this cookie for LinkedIn Ads ID syncing. |
Cookie | Duration | Description |
---|---|---|
_fbp | 3 months | Facebook sets this cookie to store and track interactions. |
_ga | 1 year 1 month 4 days | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors. |
_ga_* | 1 year 1 month 4 days | Google Analytics sets this cookie to store and count page views. |
_gcl_au | 3 months | Google Tag Manager sets this cookie to experiment advertisement efficiency of websites using their services. |
_hjFirstSeen | 30 minutes | Hotjar sets this cookie to identify a new user’s first session. It stores a true/false value, indicating whether it was the first time Hotjar saw this user. |
_hjRecordingEnabled | never | Hotjar sets this cookie when a Recording starts and is read when the recording module is initialized, to see if the user is already in a recording in a particular session. |
_hjRecordingLastActivity | never | Hotjar sets this cookie when a user recording starts and when data is sent through the WebSocket. |
_hjTLDTest | session | To determine the most generic cookie path that has to be used instead of the page hostname, Hotjar sets the _hjTLDTest cookie to store different URL substring alternatives until it fails. |
ajs_anonymous_id | 1 year | This cookie is set by Segment to count the number of people who visit a certain site by tracking if they have visited before. |
ajs_user_id | never | This cookie is set by Segment to help track visitor usage, events, target marketing, and also measure application performance and stability. |
AnalyticsSyncHistory | 1 month | Linkedin set this cookie to store information about the time a sync took place with the lms_analytics cookie. |
CONSENT | 2 years | YouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data. |
ln_or | 1 day | Linkedin sets this cookie to registers statistical data on users' behaviour on the website for internal analytics. |
tk_ai | 1 year 1 month 4 days | JetPack sets this cookie to store a randomly-generated anonymous ID which is used only within the admin area and for general analytics tracking. |
tk_lr | 1 year | The tk_lr is a referral cookie set by the JetPack plugin on sites using WooCommerce, which analyzes referrer behaviour for Jetpack. |
tk_or | 1 year 1 month 4 days | The tk_or is a referral cookie set by the JetPack plugin on sites using WooCommerce, which analyzes referrer behaviour for Jetpack. |
tk_qs | 30 minutes | JetPack sets this cookie to store a randomly-generated anonymous ID which is used only within the admin area and for general analytics tracking. |
tk_r3d | 3 days | JetPack installs this cookie to collect internal metrics for user activity and in turn improve user experience. |
tk_tc | session | JetPack sets this cookie to record details on how user's use the website. |
Cookie | Duration | Description |
---|---|---|
_tt_enable_cookie | 1 year 24 days | Tiktok set this cookie to collect data about behaviour and activities on the website and to measure the effectiveness of the advertising. |
_ttp | 1 year 24 days | TikTok set this cookie to track and improve the performance of advertising campaigns, as well as to personalise the user experience. |
bcookie | 1 year | LinkedIn sets this cookie to track the use of embedded services. |
bscookie | 1 year | LinkedIn sets this cookie to track the use of embedded services. |
IDE | 1 year 24 days | Google DoubleClick IDE cookies are used to store information about how the user uses the website to present them with relevant ads and according to the user profile. |
NID | 6 months | NID cookie, set by Google, is used for advertising purposes; to limit the number of times the user sees an ad, to mute unwanted ads, and to measure the effectiveness of ads. |
test_cookie | 15 minutes | The test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies. |
VISITOR_INFO1_LIVE | 5 months 27 days | A cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface. |
YSC | session | YSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages. |
yt-remote-connected-devices | never | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
yt-remote-device-id | never | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
yt.innertube::nextId | never | This cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen. |
yt.innertube::requests | never | This cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen. |
Cookie | Duration | Description |
---|---|---|
__q_domainTest | session | No description |
__q_state_qQfaoCzkKgjWcPNR | 1 year 1 month 4 days | No description |
__tld__ | session | No description |
_OG_GDPR_COOKIE_ | session | No description available. |
m | 1 year 1 month 4 days | No description available. |
viewedBlog | 1 month | No description |