Description
Problem
The action handler API is primarily concerned with triggering actions from interaction steps but is overloaded with some limited tag handling functionality, currently only implemented for Zapier. This had to be altered in #1654 to avoid a lot of unnecessary dispatches to no-op action handlers. Because tags are significantly different from interaction steps, it would be cleaner to create a new action-handler like API for tags.
Solution
Add integrations/tag-handlers
for tag handlers like the Zapier integration. Unlike action handlers, these will run every time a tag is applied, so we don't need the additional machinery to check available handlers for individual users. In the future, it might make sense to add something similar back in to allow handlers to be configured for specific tags in the frontend (e.g. to apply a VAN activist code every time a specific tag is applied).