I’m wondering if there will eventually be bulk endpoints for creating webhooks and/or if it would be possible to get task updates by setting up a webhook at the workspace level at some point. Needing to set up an individual webhook for every task that I want to receive updates for is a huge pain when every single webhook creation requires not only a request to set up the webhook, but also a request to confirm the handshake.
Let me know if you have questions about my use case. I’d like to set up webhooks for potentially hundreds/thousands of tasks, so setting up each individually will undoubtedly end up taking a significant amount of time.
Hi Diego and welcome to the forum,
This isn’t something Asana has mentioned that I’ve heard of, so I would say not too likely. It’s always possible but I wouldn’t hold my breath for it.
This isn’t going to happen, I’m quite sure. The reason is that a webhook for all task changes in a large workspace at the workspace level could result in a firehose of events that could overwhelm both the Asana sending side and your receiving side. This becomes even more true as Asana pushes more and more into the large enterprise space.
Normally you would not do this for every task, but at the project level. The only use case I can think of for setting webhooks for individual tasks is if the tasks you’re wanting to monitor are scattered throughout many projects but you only want to monitor a very few tasks in a given project. Otherwise, you should set webhooks at the project level, which is much more manageable than at the task level.
Thanks so much for your response!
This is exactly the kind of use case I am trying to solve for. That said, when it gets in front of users, I don’t actually know that this will be a common scenario. It could be that in 90%+ of cases all tasks I want updates for are in the same project. The idea is that a user will “import” whichever tasks they like from a workspace, and then I want to set up webhook tracking for those events.
One concern I have with using project based webhooks is that if a task is in multiple projects, and I have a webhook set up for each project, I assume I would receive the webhook event for updates to that task multiple times. Is that correct?
Yes, that’s correct. You would have to handle those “duplicate” events on your end. It shouldn’t be too hard, given you can key off of the task gid which will be the same for all events across projects for a given task; but yeah, it’s some extra work to do that.