Skip to main content
Answered

How to disambiguate canvas webhooks if users reuse one intercom workspace for multiple accounts?

  • September 14, 2021
  • 1 reply
  • 10 views

I'm working on an application that integrates with Intercom, and some of my users would like to connect a single Intercom workspace to multiple organizations within my app for organization purposes. This is no problem on my end for the most part, however when it comes to handling webhook responses, it starts to become ambiguous. Previously I was using the `workspace_id` that in on all canvas webhooks, but now I have multiple entities that have that workspace ID, so I can't solely use that.

 

I've considered adding metadata to the contacts themselves, but not all webhooks have a contact associated with them. The last thing I can think of is that they have different OAuth tokens, but webhook responses don't include that so I would have no way of matching it. And as far as I can tell, there's no way I can add some custom metadata to be included in a response per installation of my app.

 

If anyone else has run into this or has any ideas, I'd love to hear!

Best answer by User189

Hey Will,

I'm sorry I don't have an answer. I just want to say we're exactly in the same situation, and use the `workspace_id` from the webhook payload to identify which "account" (what you probably call "organization") matches on our side.

 

We initially thought we would support multiple "accounts" connected to the same Intercom workspace. But in the end we decided it would be a bad idea as, in our case, we really need a 1:1 relation between an Intercom workspace and an "account": we don't want different "accounts" to edit / interact with the same Intercom data, because this would lead to weird things (imagine 2 different Accounts connected to the same Intercom workspace: without having knowledge of each other, they would both be able to edit "each other's" records—the records actually being the same).

 

Still, following this thread to see if there are any other way to do this.

 

View original
Did this topic help you find an answer to your question?

1 reply

  • New Participant
  • 3 replies
  • Answer
  • November 15, 2021

Hey Will,

I'm sorry I don't have an answer. I just want to say we're exactly in the same situation, and use the `workspace_id` from the webhook payload to identify which "account" (what you probably call "organization") matches on our side.

 

We initially thought we would support multiple "accounts" connected to the same Intercom workspace. But in the end we decided it would be a bad idea as, in our case, we really need a 1:1 relation between an Intercom workspace and an "account": we don't want different "accounts" to edit / interact with the same Intercom data, because this would lead to weird things (imagine 2 different Accounts connected to the same Intercom workspace: without having knowledge of each other, they would both be able to edit "each other's" records—the records actually being the same).

 

Still, following this thread to see if there are any other way to do this.

 


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings