Open Navigation


Asana is a web and mobile application designed to help teams organize, track, and manage their work


The Asana connector on Tray allows you to interact with the data in your Asana account in any way you choose. The majority of the API is currently supported on Tray, enabling you to do things like:

  • Copy a project for each new Salesforce Opportunity that's created
  • Add project status updates
  • Add comments
  • Attach files to tasks


When using the Asana connector, the first thing you will have to do is click on 'New Authentication' in the step editor:


On the following page proceed to allow Tray access to your account.

Basic Operations List

  • Add custom field to project

  • Add members to project

  • Add project status update

  • Add tag to task

  • Add task to project

  • Copy all project custom fields

  • Copy all tasks

  • Copy task

  • Create project

  • Create project section

  • Create subtask

  • Create task

  • Create task comment

  • Delete project

  • Delete section

  • Delete task

  • Get project

  • Get section

  • Get task

  • Get team

  • Get user

  • Get user by email

  • Get workspace

  • List organization teams

  • List project sections

  • List project tasks

  • List tasks

  • List task stories

  • List task subtasks

  • List team members

  • List workspace projects

  • List workspaces

  • List workspace users

  • Project exists?

  • Remove members from a project

  • Remove tag from task

  • Remove task from project

  • Update project

  • Update section

  • Update task

  • Upload attachment to task

Note on Operations usage

When using the List Tasks operation you should only choose one of Assignee ID or Project ID:


If you choose an option for both you will receive an error message such as:



This example demonstrates how to use a workflow to create a new task and send a slack message with the task name:


You will need to create two steps:

  1. Create task (using the asana connector)
  2. Send message (using the slack connector)

With the Create task operation you will need to specify the Workflow ID to which the new task will belong and its Name, all the other properties are not mandatory.

With the Send message operation you will need to specify the Channel to which the message will be sent and of course the message body. In this example, the message body will be {$} has been created so that you can combine both text and the JSON path to the name of the task created in the previous step.

You can run this workflow and see the logs in the DEBUG section. The output of the first step should look like this:

"data": {
"notes": "",
"assignee_status": "upcoming",
"gid": "972375047894944",
"num_likes": 0,
"hearted": false,
"num_hearts": 0,
"completed_at": null,
"modified_at": "2019-01-09T14:37:42.867Z",
"resource_subtype": "default_task",
"due_on": null,
"parent": null,
"created_at": "2019-01-09T14:37:42.867Z",
"resource_type": "task",
"completed": false,
"name": "This is a task",
"hearts": [],
"liked": false,
"assignee": null,
"followers": [
"gid": "68711130877162",
"id": 68711130877162,
"resource_type": "user",
"name": "A person"
"workspace": {
"gid": "498346170860",
"id": 498346170860,
"resource_type": "workspace",
"name": "Personal Projects"
"tags": [],
"projects": [
"gid": "969484041887157",
"id": 969484041887157,
"resource_type": "project",
"name": "test"
"id": 972375047894944,
"start_on": null,
"likes": [],
"memberships": [
"project": {
"gid": "969484041887157",
"id": 969484041887157,
"resource_type": "project",
"name": "test"
"section": null
"due_at": null

The output of the second step should look like this:

"ok": true,
"channel": "D2DRPB1J9",
"ts": "1547014664.000300",
"message": {
"type": "message",
"subtype": "bot_message",
"text": "This is a task has been created",
"ts": "1547014664.000300",
"username": "",
"icons": {
"image_48": "https://imageurl.png"
"bot_id": "BCA3SHKJN",
"attachments": []
Was this article helpful?