How to use IBM App Connect with Asana

Asana is a work management and project tracking app that provides projects, tasks, conversations, and dashboards to enable teams to collaborate and track progress online.

Availability:
  • App Connect Enterprise as a Service connector
  • A local connector in a Designer instance of IBM App Connect in containers (Continuous Delivery release)Local connector in containers (Continuous Delivery release) 11.0.0.11-r1 or later
  • A local connector in a Designer instance of IBM App Connect in containers (Long Term Support)Local connector in containers (Long Term Support release)
  • A local connector in a Designer instance of IBM App Connect in containers (Support Cycle 2)Local connector in containers (Long Term Support Cycle-2 release)
The following information describes how to use IBM® App Connect to connect Asana to your other applications.

Supported product and API versions

To find out which product and API versions this connector supports, see Detailed System Requirements on the IBM Support page.

Connecting to Asana

To connect App Connect to your Asana account, see Connecting to Asana.

General considerations

Before you use App Connect with Asana, take note of the following considerations.
  • (General consideration) You can see lists of the trigger events and actions that are available on the Applications and APIs page of the App Connect Designer.

    For some applications, the events and actions depend on the environment and whether the connector supports configurable events and dynamic discovery of actions. If the application supports configurable events, you see a Show more configurable events link under the events list. If the application supports dynamic discovery of actions, you see a Show more link under the actions list.

  • (General consideration) If you are using multiple accounts for an application, the set of fields that is displayed when you select an action for that application can vary for different accounts. In the flow editor, some applications always provide a curated set of static fields for an action. Other applications use dynamic discovery to retrieve the set of fields that are configured on the instance that you are connected to. For example, if you have two accounts for two instances of an application, the first account might use settings that are ready for immediate use. However, the second account might be configured with extra custom fields.
  • Before you add events or actions to your flow, make sure that you have the following resources:
    • If you choose the "New task" event to trigger your flow, you must have an Asana workspace or organization, and at least one project set up in Asana. App Connect monitors the workspace or organization (or optional team) for new tasks that are created in the project.
    • If you add the 'Create attachment' action to your flow, you must have an existing task in Asana for App Connect to add your attachment to.
      Tip: When you edit the flow, the Task field offers a list of known tasks for you to select from. To attach a file to a task that is to be created later for a "New task" event in the flow, switch to advanced mode to map the New task Task ID field into the Task field. If you then exit advanced mode, the Task field shows the message This field has been defined in advanced mode.

      When you add this action to your flow, you must also provide the name of the project that the task belongs to, and the workspace or organization that contains your project. You can also specify the team.

      When you define the attachment's details, you typically specify its name and content by mapping to output from a previous node in your flow. For example, the output might be a file that is retrieved from a folder in Box or Dropbox, or an attachment from a submitted Wufoo form. To define details of the attachment, complete the following fields.
      Attachment name
      Specify the file name as a mapped field or by entering a file name; for example, myfile.txt, myfile.doc, myimage.png.
      Content
      Specify the text or binary content of the attachment.
      • For a plain text file, you can specify hardcoded text directly in the Content field, or you can map to a field from a previous event or action in the flow. Note also that you might need to apply Base64 encoding to the content, based on its origin.
        • If you specify hardcoded text directly in the Content field, you must apply Base64 encoding to the text. First, use the Insert a function icon Insert a function icon to add the $base64encode() function.
          Adding the $base64encode function

          Then click within the brackets () and enter your text within the single quotation marks, by using \n to depict a line break; for example, ('Some text\nSome text on a new line').

        • If you specify your text content by using a mapped field, Base64 encoding must be applied if you are mapping to the contents of a file in Box. For other applications such as Dropbox or Wufoo, you do not need to apply this encoding. To apply Base64 encoding to a mapped field, use the Insert a mapping Insert a mapping icon icon to add the mapped field. Then click the mapped field and click Apply a function to open the Functions list.
          Selecting 'Apply a function'

          Finally, under Binary functions in the list, select $base64encode().

      • For binary content, use a mapped field to specify the contents.
      Content type
      Specify the content type as a Multipurpose Internet Mail Extensions (MIME) type; for example, text/plain, image/png, application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/pdf. Ensure that you specify the correct MIME type for the attachment to be created.
      In this example, the file name is manually specified and hardcoded text is entered directly into the Content field, with Base64 encoding applied.
      Example: Creating an attachment by specifying hard-coded text
      In this example, the flow includes a Box "Retrieve file" action that is used to specify the ID of a .txt file to be retrieved. In the subsequent Asana "Create attachment" action, the Attachment name field is used to map to the name of the retrieved Box file, and the Content field is used to map to the retrieved content. Also, Base64 encoding is applied to the mapped content.
      Example: Creating an attachment by mapping to a text file in Box
      In this example, the flow includes a Dropbox "Retrieve file" action that is used to specify the path and file name of a .txt file to be retrieved. In the subsequent Asana "Create attachment" action, the Attachment name field is used to map to the name of the retrieved Dropbox file, and the Content field is used to map to the retrieved content.
      Example: Creating an attachment by mapping to a text file in Dropbox
      In this example, the flow includes a Box "Retrieve file" action that is used to specify the ID of a .png file to be retrieved. In the subsequent Asana "Create attachment" action, the Attachment name field is used to map to the name of the retrieved Box file, and the Content field is used to map to the retrieved content.
      Example: Creating an attachment by mapping to an image file
      In this example, the flow includes a Box "Retrieve file" action that is used to specify the ID of a .doc file to be retrieved. In the subsequent Asana "Create attachment" action, the Attachment name field is used to map to the name of the retrieved Box file, and the Content field is used to map to the retrieved content.
      Example: Creating an attachment by mapping to a Microsoft Word file
    • If you add the "Create project" action to your flow, you must have an existing team in Asana for App Connect to add your project to. Specify the name of the team in App Connect.
    • If you add the "Create task" action to your flow, you must have an existing project in Asana for App Connect to add your task to. Specify the name of the project in App Connect.

Events and actions

Asana events

These events are for changes in this application that trigger a flow to start completing the actions in the flow.

Tasks
New task
Deleted task

Asana actions

Your flow completes these actions on this application.

Attachments
Create attachment
Retrieve attachments
Projects
Create project
Retrieve projects
Update project
Stories
Create story
Retrieve stories
Update story
Delete story
Tags
Create tag
Update tag
Tasks
Create task
Retrieve tasks
Update task
Delete task
Teams
Retrieve teams
Users
Retrieve users
Workspaces
Retrieve workspaces
Update workspace

Examples

Dashboard tile for a template that uses Asana
Dashboard tile for a template that uses Asana
Dashboard tile for a template that uses Asana

Use templates to quickly create flows for Asana

Learn how to use App Connect templates to quickly create flows that perform actions on Asana. For example, open the Templates gallery, and then search for Asana.

Dashboard tile for a template that uses Asana