Granular selection of webhook events

Problem to solve

Currently, Webhook triggers can be enabled by specific types of events. However, these events sometimes represent different types of discreet actions within that event type category, and there's currently no simple way to listen to a subset of those actions.

Further details

I'll give an example. Merge Request events are triggered on different actions: 'open', 'approved', etc. Those come through in the event body. However, you may not be interested in listening to all event action types for all use cases—for example, if a webhook is being used to trigger an external build job, approval actions may be irrelevant.

Proposal

Allow a more granular selection of webhook triggers by event action type. By default, users would be able to listen for events for all actions within an event type, as it is currently. However, an additional set of checkboxes could be provided with the relevant actions under each event type to select or deselect a subset of desired actions to listen to.

What does success look like, and how can we measure that?

Users would be able to navigate to the integrations settings and be presented a more granular selection under each webhook event trigger based on the presently available action types under each event type. Upon selecting, users would be able to listen to all actions within a specified event type or a subset of the available action types.

Links / references