API/Webhooks question


#1

Hi all,

We have a great partnership with Booking.com. They have an application called Booking suite which hoteliers use for their property management system. Within that system hoteliers can directly choose for us for channel management service. See it as an extranet where the user clicks on a tile and is redirected to a SmartHOTEL landing page to request the software (http://content.smarthotel.nl/smart-channel-manager)

Long story short, BookingSuite is requesting information from us when a lead fills out the form, lead is being closed and/or lost. Via API endpoints. The visitor gets a product instance ID via bookingsuite extranet. So I thought a Webhook in a workflow is our answer. But sadly it’s too limited for this, since the webhook options include only one static url and that’s it.

Sorry for the long post, I am not that acquainted with API/webhooks etc. I hope some one can help us in the right direction.

Have a great day!

Sebas


#2

Hi @Sebastiaan_Ipenburg,

Just to make sure that we’re on the same page, you’re trying to send workflow webhook requests to different URLs based on the contact that submitted the form? A workflow webhook action can only send requests to a static URL, so you’ll either need to have multiple workflows pointing to different places, or some form of middleware to process those requests and send them to the correct place (wherever BookingSuite needs to receive the information).


#3

Thanks Derek for replying to this topic. Sorry for any inconvience on this matter. im not really aquinted when it comes to API, Webhooks and other related topics.

Indeed Derek, thats what we try to do.
BookingSuite adds an instance ID in the Visitors URL, that makes the URL that we capture eacht time different. (we dont have to catch the entire url but the instance ID.)

When a hotel signs up BookingSuite will pass the product instance ID as an url parameter - so it’s going to be different for every signup:

Below is the info provided from BookingSuite for the endpoints.
Sending notifications to the Marketplace:
Endpoints:
PUT https://apipartner.booking.com/marketplace/product/1234/signup
Triggers the signup event for the product with product_instance_id 1234 (sends a notification that the property has signed up for the product).
No request body is required.
A successful request returns 201 Created with the following body: { “success”: 1, “status”: “signed up” }.


#4

Hi @Sebastiaan_Ipenburg,

Adding a dynamic product_instance_id query parameter to a workflow webhook URL isn’t currently possible in the tool. What you could do is pass the product_instance_id as a hidden field in the contact’s form submission, make a POST request to your own server via the workflow webhook, and then pull the product_instance_id field from that request and make a properly formatted request to BookingSuite.

You could probably cut out the middle man by using a custom HTML form and the HubSpot forms API. You could handle processing the form and making requests to BookingSuite on your server, then submit the form info to the HubSpot forms API.


#5

Thanks so much for your information Derek, much appreciated.
With this info we will continue to work on our challenge.