Webhook or API call to list all new tasks or changed tasks

Hi,

I am experimenting with webhooks and an API calls to create our own custom notifications when new tasks are added or tasks are updated.

Is there a way to watch for workspace level task changes? Apparently I can only watch for task changes on a per project basis, but on the workspace level I would need to filter to project level changes only. But in this case what would be the way to implement the type of overall, workspace level monitoring of new/update tasks? Is there any way to achieve this?

I understand that workspace level task events could mean a lot of information. But couldnā€™t pagination be a solution that instead of disallowing workspace level task events altogether? Instead of having to, for example, register a webhook for every single project, or even worse: to query, via the API, every single project every few minutesā€¦

Background:
Unfortunately Asanaā€™s own notifications are not granular enough: we either receive a million notifications, or none. There is no way to receive, for example, notifcations only if tagged. We also tried the Asana-Slack integration for this. That is a little better: it only send notifications if tagged or assigned a task or if someone comments on a task assigned to you. However, if you are ā€œactiveā€ on Asana (eg. happen to be editing another task), then you will not receive the Slack notification. Long story short: it seems the only way would be to create our own notification system that we can then fine-tune. Hence my question.

(I apologize if I used incorrect expressions in my post.)

Thanks,
Steve

Hi @Steve_Toth,

I replied to your same question in the other thread you posted in. Although from your post here, it looks like you figured out the limitation that I mentioned in the other threadā€¦

Hi @Phil_Seeman thank you - for both responses. Sorry, did not mean to duplicate. I suspected the limitation but wasnā€™t sure. New to Asana API.

Trying to find a way to achieve our custom notifications. Ironically the Slack integration achieves ALMOST what we are looking for, except for the fact that if a user is active on Asana, then no notofocation is sent to Slack. So I started trying to figure out how Slack does it.

The point about a potentially large bulk of data is understandable. But I am thinking whether adding project level webhooks and recreating the same functionality that way actually ends up creating more traffic than a single, but workspace level webhook would. Perhaps with a threshold so if data exceeds a certain number then a limit or pagination is imposed.

I am trying to figure out how individual, project level webhooks could be useful. I would think that most use cases would be looking to monitor changes overall rather than on a project by project basis.

But thatā€™s just me thinking.

I was hoping there might be a recommended best-practice approach to achieving the workspace level monitoring/notifications that I am aiming for. As it is I can only think of querying a list of projects, and automatically registering webhooks for all newly created individual projects. But that does not seem like a clean solution. :frowning:

With the current API (and I donā€™t foresee any big changes to it), thatā€™s exactly what you have to do if you want to use webhooks.

While itā€™s true that a workspace-level task webhook might end up with the same number of events as project-level webhooks for every project in the workspace, those are very different scenarios from the Asana perspective: from my conversations with Asana API folks, I believe they are concerned with the number of events in any one webhook being too overwhelming for their queues and such. By breaking it up into a series of project-level webhooks, they donā€™t have that issue. Also, I think their research determined that they see the more common use case as one where people are only interested in specific project(s) than in all tasks in a whole workspace.

1 Like

Thank you, @Phil_Seeman for sharing your opinion and your experience!

Older post, but thought Iā€™d offer one additional solution for anyone who comes across this post.

Not sure if this was an option when originally posted, but itā€™s now possible to add tasks to more than one project.

In this case, you could have your tasks assigned to the primary project AND an ā€˜all tasksā€™ project.

This can be automated via rules for business and enterprise customers with trigger ā€˜task created > action ā€˜add to another projectā€™

Register the webhook using the ā€˜all tasksā€™ project and presto - updates for all tasks.

Donā€™t forget to add old tasks to the ā€˜all tasksā€™ project as well!

1 Like