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