Best way to solve webhook problem

Hello,

My goal in using the webhook api is ultimately to see if a task of a particular type is created or if custom fields on that task are updated and take an action on my application.

If this type of task is created it must have default values set for three custom fields. If those values are changed then I should be notified of that change and given what the values for those three custom fields are after the change.

My problem is that the webhook I setup for my project seems to only fire once an hour if it detects a change. If the task is created I want to immediately fill those custom fields with default values. I can do that if when the task is created a webhook fires immediately.

Question
How can I increase the frequency of webhook firing so that I don’t have to wait an hour between webhook events?

Hi @Harrison_Reid,

Asana webhooks definitely fire right away, I can promise you. There must be something in your setup or environment that’s causing the behavior you’re seeing. If you want to share more details about those, maybe we can discern some clues.

Im using a basic project level webhook:
{
“data”: {
“filters”: [
{
“resource_type”: “task”,
“action”: “added”
}
]
}

The webhook is sent to an AWS API Gateway but when I look at cloudwatch logs I only get logs of it hitting my api on an hourly basis. Even if I live tail the logs I still see updates on hourly basis:

I added a task just now (1:09 PM CST) and am live tailing my aws logs as well as checking the last success/failure by getting the webhook. Neither show an entry after 2 minutes. My API doesn’t currently have more than 100ms execution time logic.

Here’s the output from getting my webhook after several minutes from when I created the task

It must be something related to the particular AWS environment. I don’t use AWS for my webhooks (or anything else) so I’m afraid I won’t be of much help.

@John_Vu @AndrewWong any ideas?

@Phil_Seeman if this were the case you would expect a curl request to show the webhook’s last successful/failed attempt to reflect a different time then what I see in AWS (which I don’t)

Well I recreated the API in the exact same format and now the responses are much faster. Same backend code :man_shrugging:

1 Like

That’s very odd; but glad to hear it’s working better now!