About the Asana channel

Asana is a workplace content management system (CMS) designed to help a wide range of companies achieve their organizational needs. Asana is customizable and allows users to break down projects into tasks and set clear goals for teams. It organizes work so teams know what to do, why it matters, and how to get it done. Visit Asana to learn more.

How to connect

  1. On the My pipelines page, click Create pipelines. Enter name, description, and tag fields and click the Create Pipelines button. The pipelines wizard displays:
  2. From the wizard you choose the connections for the first steps of your pipeline. When you choose a type, you'll add the channels and steps for your first steps. You can always add more steps later. A Triggered pipeline is started by a specific event in real-time. A Scheduled pipeline will start according to a schedule. A Manual pipeline only starts manually. Once you've completed the wizard, you'll be prompted for connection detail, if necessary. If you are an experienced builder, click the Start from scratch button and then from the right side of the page, choose the All to list all available channels.
  3. Expand Asana in the list of channels on the right side of the page and click Connect to Asana.
  4. In the pop-up window, click Connect to Asana.

  5. You will be redirected to the Asana Login page and asked to log in with Google or with email and password.

How to reconnect the Asana channel

You may need to reconnect your account to a channel. Reasons may be (but not limited to):

  • If you need to connect a different account.

  • Authorization updates, such as a changed password.

  • Editing the access rights that Pipelines has to the channel.

To reconnect:

  1. Select a pipeline that already has Asana in it.
  2. Open a step containing Asana .
  3. Under account, select Connect (or reconnect) and follow the process above, How to connect.

Steps

The steps you can use with Asana fall into four categories: Projects, Tasks, Comments, and Attachments.

Note: The Asana channel does’t have access to custom fields.

Type Name Description
Projects
Action Create a Project

Creates a new Project in the given workspace.

Action Update a a Project

Updates a Project's attributes - name, color, notes, archived status.

Action Delete a Project

Deletes a Project.

Action Look Up Project Returns a single Project for the selected Project ID.
Query Search Projects

Searches the selected workspace and team for Projects and returns a list applying optional filter conditions.

Tasks
Trigger Task Created

Triggers when a new Task is created in the given workspace.

Trigger Task Updated Triggers when a Task is updated in the given workspace.
Trigger Task Moved Triggers when a Task is moved in a different section in the given workspace.
Trigger Task Tagged Triggers when a task is tagged.
Trigger Task Untagged Triggers when a task is untagged.
Action Create a Task Creates a new Task.
Action Update a Task Updates an existing Task.
Action Delete a Task Deletes an existing Task.
Action Add or Move to a Project or Section Adds or moves a Task to a project or a section within a Project.
Action Fetch a Linked Task Fetches a linked Task.
Action Look Up a Task Returns a single Task for the selected Task ID.
Query Advanced Search Searches for Tasks in a workspace applying filter conditions. Equivalent to Asana web app’s advanced search feature. This step is available only for Asana Premium users and returns up to 100 search results.
Query List Tasks in a Section Lists Tasks in a section.
Query Search Tasks Returns a list of Tasks within the given Project, applying optional filter conditions.
Comments
Trigger Comment Posted Triggers when a Comment is posted in the selected Project.
Action Post a Comment Posts a Comment in the selected Task.
Action Update a Comment Updates a Comment.
Action Delete a Comment Deletes a Comment.
Action Reply to a Comment Replies to a Comment.
Action Look up a Comment Looks up a Comment by ID.
Query Search Comments Searches the selected Project for Comments and returns a list.
Attachments
Trigger Attachment Uploaded Triggers when an Attachment is uploaded in the selected Project.
Action Add an Attachment Attaches a file to an existing Task.
Action Delete an Attachment Deletes an Attachment.
Action Look Up Attachment Looks up an Attachment by ID.

Limits

To protect the stability of the API and keep it available to all users, Asana enforces multiple kinds of rate limiting. Requests that hit any of the rate limits will receive a 429 Too Many Requests response, which contains the standard Retry-After header indicating how many seconds the client should wait before retrying the request.

Note: Limits are allocated per authorization token. Different tokens have independent limits.

Standard Rate Limits

The standard rate limiter imposes a quota on how many requests can be made in a given window of time. Asana’s limits are based on minute-long windows, and differ depending on whether the domain is premium or not.

Domain type Maximum requests per minute

Free

150

Premium

1500

In addition, calls to the search API are limited to 60 requests per minute. The duplication endpoints are limited to 5 concurrent jobs.

Concurrent Request Limits

Asana also limits the number of requests being handled at any given instant.

Request type Maximum concurrent requests

Reads (GET)

50

Writes (POST, PUT, PATCH, DELETE)

15

For example, if you have 50 read requests in-flight and attempt to make another read request, the API will return a 429 Too Many Requests error. The read and write limits are independent of each other, so the number of read requests you make at one time will have no impact on the number of write requests you can make.

For more detailed information about Asana restrictions and limitations see Rate Limits.

Use Cases

The following are some example of using the Asana channel.

Asana tasks from Quickbase escalation app

We have an example app in Quickbase that we extract newly created records representing Pipelines channels to be developed and we want to create three corresponding tasks in an Asana project. In the following example we will show you step by step how to create this pipeline.

  1. Drag and drop the Record Created Trigger from the Quickbase channel and attach it to the pipeline.

    Account - Select the Quickbase account for this trigger
    Table - The table containing the channels data
    Fields for Subsequent Steps - select the table fields (Name, Assignee, Due date, etc.)

  2. Add a Create Task Action from the Asana channel and attach it to the pipeline.

    Account - select the Asana account to use for this trigger.
    Workspace - select the Asana Workspace for which you want to specify the trigger
    Project - select the Asana Project for which you want to specify the trigger

    You could populate the next fields with data from the object from the first step.

    Name - the name of the Task you want to create
    Notes - the description of the Task you want to create
    Due on - the due date of the task

  3. Repeat the second step two more times for tasks about research and documentation. After triggering the pipeline the Activity log displays:

    And in the Asana project we can see that all tasks have been created:


Asana file transfer to Google Drive

It would be convenient every time we upload an attachment to a particular task to transfer that file to a folder in Google Drive. In the following example we will show you step by step how to create this pipeline.

  1. Drag and drop the Attachment Uploaded Trigger from the Asana channel and attach it to the pipeline.

    Account - select the Asana account to use for this trigger.
    Workspace - select the Asana Workspace for which you want to specify the trigger.
    Project - select the Asana Project for which you want to specify the trigger.
    Fields for Subsequent Steps - select the table fields.

  2. Click on Add conditions and select Task->Name, select equals and specify the task name that you want to transfer the files

  3. Drag and drop the Upload a File Action from the Google Drive channel and attach it to the pipeline.

    Account - select the Google Drive account to use for this trigger.
    URL - drag and drop the File transfer handle field.
    Parent - select the Google Drive folder to which you want to transfer the files.
    Name - drag and drop the Name field for the task.

    After triggering the pipeline the Activity log displays:


    Now, when we upload an attachment, it is transferred to the specified Google Drive folder.