Is there a field in the Task API that I can use to tell if a task is public or private? I am querying for a user’s tasks and would like to filter out the ones that are private.
The concept of a “private” task is a bit complicated. For example, a task can be private to one person or to 10 people. You can have a private project and then all tasks in that project are private to the members of the project. There is no “privacy” field on a task.
A user’s Personal Access Token (PAT) will be scoped to the same permission level that the user has in the Asana web product. So if you create a PAT to query for tasks, you will only get the tasks that are accessible to you in the web product. This could include private tasks that you have access to in Asana.
If you only want to fetch public tasks, you should create an Asana account and join no projects. Use this bot account to generate a PAT and it will only have access to public tasks.
Note that if you’re accessing the API with a Service Account (which is an Asana Enterprise tier feature), it will have access to every task in Asana.