Solved

Application Webhooks for Multiple Clients

  • 25 October 2023
  • 1 reply
  • 152 views

I'm working on an integration project. In the initial phase of this integration, I aim to create a web application with a webhook feature. This allows clients to integrate the application into their front-end. When specific events occur, the requests will be forwarded to the application configured in the webhook.I'm seeking a method to distinguish which client is sending the request. Specifically, I'm exploring the possibility of configuring multiple API keys or OAuth tokens (one for each client) that can be included in the request payload.
icon

Best answer by justin 27 October 2023, 19:51

View original

1 reply

Userlevel 3
Badge +7

Hi!

Justin here with the support engineering team 👋

If you use an Application Webhook, we include an auth object on the payload, so you could determine the customer from there (via a DB lookup on your side) then forward on to the destination. 

If you use Application Webhooks, you can't configure any attributes on a per-installation basis. The link posted is only when the Application developers configure their webhook, not when any customers install an application webhook.
 

During the setup phase you should receive an auth object with the Front company ID. Provided you record this, you could then map a Front company ID to your own user ID. Then every payload received will continue to contain a company ID and you could can map based that. 
 

A few additional notes:

  1. Published Webhooks work hand-in-hand with an OAuth Client: If an application defines a webhook, the application developer will need to request a token (via OAuth) to enable the webhook.
  2. All webhook requests contain the authorization.id property with the ID of the customer (company) that emitted the event.
  3. A token can request its identity (GET /me) to get the ID of the customer

 

If there are any other questions, please do not hesitate to reach out!

Reply