Logic flaw in webhook associations

Good morning Hubspot!

We’re using webhooks to synchronize Hubspot with an external data aggregator. It works very well for the most part, but there’s a significant flaw in the webhook I wanted to share. If you’re a dev like me, this post might save you some head scratching.

Association labels will not fire the webhook in the manner you would expect.

  • If you associate a contact to a deal for example, then the webhook will fire. (Good)
  • If you add an association label to that contact, it will also fire (Good).
  • If you remove an association label from that contact, it will also fire (Good).

So far so good.

Now, let’s say that one contact on a deal moves from a Main Contact, to a Secondary Contact (labels). It’s important to understand this relationship. You log into Hubspot, access the deal, edit the contact’s association label and substitute this label (remove, and add in a singular update) -- then the webhook’s deal.associationChange will not fire!

Requesting a bit of assistance from Support, they pretty much told me this was per design, intentional, and won’t get fixed. What a bummer.

In what design schema, does adding and removing get fired, but updating does not?

I’d like to cast some visibility on this, and flag it as a pretty important logic flaw.

Frustrated, but thanks for reading.

Alex

Hey @Launchfire, Happy Monday!

Thank you for sharing your experience with the webhook associations, and I appreciate your detailed explanation of the issue you’ve encountered.

I would suggest documenting your use case and the observed behavior with specific examples to illustrate the logical flaw so you can share this specific example with our Community or Support.

I invite our top experts, @Anton, @trevordjones, and @Crystal_Hopper. Do you have any suggestions for the @Launchfire matter?

Thank you,

Pam

Hi @Launchfire and thanks for the tag @PamCotton!

I’m not aware of the specific reason why this is designed this way, but I can confirm that others are experiencing this issue as well.

I did find this post from last March which seems to suggest that a fix has been implemented for this, but if not I would recommend upvoting this post in the Ideas forum in support of a change.