Can't get webhook to fire only on adding a tag

I am trying to build a webhook that emits when a tag is added to any task in a certain Project. I have tried so many different ways but have been unsuccessful. Here are the filters I am using right now.

    "filters": [
        {
            "resource_type": "task",
            "resource_subtype": "milestone",
            "action": "changed",
            "fields": [
                "due_at",
                "Tags",
                "tag",
                "Tag",
                "tags",
                "asignee",
                "name"
            ]
        },
        {
            "resource_type": "tag",
            "action": "added"
        },
        {
            "resource_type": "tag",
            "action": "changed",
            "fields": [
                "name"
            ]
        }
    ]

The only behavior I am getting from this is an emitted event when the name or due date has been changed, but nothing else works. What is going on?

Hi @Samuel_Patterson,

A couple of things to note:

(1)
Remove

       {
            "resource_type": "tag",
            "action": "added"
        },
        {
            "resource_type": "tag",
            "action": "changed",
            "fields": [
                "name"
            ]
        }

as it doesn’t have anything to do with changes to tasks which you are interested in.

(2)
assignee is misspelled in your code snippet.

(3)
You have "resource_subtype": "milestone", so you will only receive events on milestones, not on regular non-milestone tasks; is that what you are wanting?

If the above doesn’t lead to a resolution, please post the whole webhook payload (not just the filter) so we can see what’s being submitted.

I’m not 100% sure that task webhooks support filtering on tag changes. It’s not something I’ve tried myself so I can’t say for sure one way or another. If it does, you would want the filter specified as tags as that’s the object name on the task; you should remove the other 3 variants.

3 Likes

Here is the entire webhook I created. In my mind, this should emit an event when a tag is added to any event on Zapier. However nothing fires. Only certain fields seem to work, such as name, due_date, or dependencies. However, the only way I have found to get tag change event is to remove the fields parameter entirely and get all changes.

{
“data”: {
“gid”: “1209468885605381”,
“resource_type”: “webhook”,
“resource”: {
“gid”: “1209359781264646”,
“resource_type”: “project”,
“name”: “Zapier”
},
“target”: “https://baf4-174-29-212-248.ngrok-free.app/asanaProject?resource=12093597812646460&user=5”,
“active”: true,
“is_workspace_webhook”: false,
“failure_deletion_timestamp”: null,
“created_at”: “2025-02-21T20:18:08.343Z”,
“last_failure_at”: null,
“last_failure_content”: “”,
“last_success_at”: “2025-02-21T20:18:09.442Z”,
“delivery_retry_count”: 0,
“next_attempt_after”: null,
“filters”: [
{
“resource_type”: “task”,
“resource_subtype”: null,
“action”: “changed”,
“fields”: [
“tags”
]
}
]
}
}