Modules@robinpath/asana
asana

@robinpath/asana

0.1.2Node.jsPublic

Asana module for RobinPath.

Asana

Asana module for RobinPath.

Package: @robinpath/asana | Category: Project Management | Type: Integration

Authentication

asana.setCredentials "your-credentials"

Call this once at the start of your script before using any other function. Credentials persist for the duration of the script execution.

Use Cases

Use the asana module when you need to:

  • listWorkspaces -- Use asana.listWorkspaces to perform this operation
  • listProjects -- Use asana.listProjects to perform this operation
  • getProject -- Use asana.getProject to perform this operation
  • createProject -- Use asana.createProject to perform this operation
  • updateProject -- Use asana.updateProject to perform this operation

Quick Reference

FunctionDescriptionReturns
setCredentialsConfigure asana credentials.object
listWorkspaceslistWorkspacesobject
listProjectslistProjectsobject
getProjectgetProjectobject
createProjectcreateProjectobject
updateProjectupdateProjectobject
deleteProjectdeleteProjectobject
listTaskslistTasksobject
getTaskgetTaskobject
createTaskcreateTaskobject
updateTaskupdateTaskobject
deleteTaskdeleteTaskobject
addCommentaddCommentobject
listSectionslistSectionsobject
createSectioncreateSectionobject
addTaskToSectionaddTaskToSectionobject
listTagslistTagsobject
createTagcreateTagobject
addTagToTaskaddTagToTaskobject
getUsergetUserobject
listTeamslistTeamsobject
searchTaskssearchTasksobject
listSubtaskslistSubtasksobject

Functions

setCredentials

Configure asana credentials.

Module: asana | Returns: object -- API response.

asana.setCredentials
ParameterTypeRequiredDescription
accessTokenstringYesaccessToken

listWorkspaces

listWorkspaces

Module: asana | Returns: object -- API response.

asana.listWorkspaces
ParameterTypeRequiredDescription
inputstringNoInput parameter

listProjects

listProjects

Module: asana | Returns: object -- API response.

asana.listProjects
ParameterTypeRequiredDescription
inputstringNoInput parameter

getProject

getProject

Module: asana | Returns: object -- API response.

asana.getProject
ParameterTypeRequiredDescription
inputstringNoInput parameter

createProject

createProject

Module: asana | Returns: object -- API response.

asana.createProject
ParameterTypeRequiredDescription
inputstringNoInput parameter

updateProject

updateProject

Module: asana | Returns: object -- API response.

asana.updateProject
ParameterTypeRequiredDescription
inputstringNoInput parameter

deleteProject

deleteProject

Module: asana | Returns: object -- API response.

asana.deleteProject
ParameterTypeRequiredDescription
inputstringNoInput parameter

listTasks

listTasks

Module: asana | Returns: object -- API response.

asana.listTasks
ParameterTypeRequiredDescription
inputstringNoInput parameter

getTask

getTask

Module: asana | Returns: object -- API response.

asana.getTask
ParameterTypeRequiredDescription
inputstringNoInput parameter

createTask

createTask

Module: asana | Returns: object -- API response.

asana.createTask
ParameterTypeRequiredDescription
inputstringNoInput parameter

updateTask

updateTask

Module: asana | Returns: object -- API response.

asana.updateTask
ParameterTypeRequiredDescription
inputstringNoInput parameter

deleteTask

deleteTask

Module: asana | Returns: object -- API response.

asana.deleteTask
ParameterTypeRequiredDescription
inputstringNoInput parameter

addComment

addComment

Module: asana | Returns: object -- API response.

asana.addComment
ParameterTypeRequiredDescription
inputstringNoInput parameter

listSections

listSections

Module: asana | Returns: object -- API response.

asana.listSections
ParameterTypeRequiredDescription
inputstringNoInput parameter

createSection

createSection

Module: asana | Returns: object -- API response.

asana.createSection
ParameterTypeRequiredDescription
inputstringNoInput parameter

addTaskToSection

addTaskToSection

Module: asana | Returns: object -- API response.

asana.addTaskToSection
ParameterTypeRequiredDescription
inputstringNoInput parameter

listTags

listTags

Module: asana | Returns: object -- API response.

asana.listTags
ParameterTypeRequiredDescription
inputstringNoInput parameter

createTag

createTag

Module: asana | Returns: object -- API response.

asana.createTag
ParameterTypeRequiredDescription
inputstringNoInput parameter

addTagToTask

addTagToTask

Module: asana | Returns: object -- API response.

asana.addTagToTask
ParameterTypeRequiredDescription
inputstringNoInput parameter

getUser

getUser

Module: asana | Returns: object -- API response.

asana.getUser
ParameterTypeRequiredDescription
inputstringNoInput parameter

listTeams

listTeams

Module: asana | Returns: object -- API response.

asana.listTeams
ParameterTypeRequiredDescription
inputstringNoInput parameter

searchTasks

searchTasks

Module: asana | Returns: object -- API response.

asana.searchTasks
ParameterTypeRequiredDescription
inputstringNoInput parameter

listSubtasks

listSubtasks

Module: asana | Returns: object -- API response.

asana.listSubtasks
ParameterTypeRequiredDescription
inputstringNoInput parameter

Error Handling

All functions throw on failure. Common errors:

ErrorCause
Asana API error (${res.status}): ${t}Check the error message for details
asana.setCredentials requires accessToken.Check the error message for details
asana.updateProject requires an ID.Check the error message for details
asana.deleteProject requires an ID.Check the error message for details
asana.updateTask requires an ID.Check the error message for details
asana.deleteTask requires an ID.Check the error message for details
Asana: "..." not configured. Call asana.setCredentials first.Check the error message for details
@desc "List workspaces and validate result"
do
  set $result as asana.listWorkspaces
  if $result != null
    print "Success"
  else
    print "No result"
  end
enddo

Recipes

1. List and iterate Workspaces

Retrieve all items and loop through them.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "List workspaces and iterate results"
do
  set $result as asana.listWorkspaces
  each $item in $result
    print $item
  end
enddo

2. Create a new item with createProject

Create a new resource and capture the result.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "Create project"
do
  set $result as asana.createProject
  print "Created: " + $result
enddo

3. Create and update workflow

Create an item and then update it.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "Create project and update project"
do
  set $created as asana.createProject
  # Update the created item
  asana.updateProject
enddo

4. Check before creating

List existing items and only create if needed.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "List workspaces and create project"
do
  set $existing as asana.listWorkspaces
  if $existing == null
    asana.createProject
    print "Item created"
  else
    print "Item already exists"
  end
enddo

5. Multi-step Asana workflow

Chain multiple asana operations together.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "List workspaces, list projects, and more"
do
  set $r_listWorkspaces as asana.listWorkspaces
  set $r_listProjects as asana.listProjects
  set $r_getProject as asana.getProject
  print "All operations complete"
enddo

6. Safe listWorkspaces with validation

Check results before proceeding.

@desc "Setup authentication"
do
  asana.setCredentials $token
enddo

@desc "List workspaces and validate result"
do
  set $result as asana.listWorkspaces
  if $result != null
    print "Success: " + $result
  else
    print "Operation returned no data"
  end
enddo

Related Modules

  • clickup -- ClickUp module for complementary functionality
  • jira -- Jira module for complementary functionality
  • linear -- Linear module for complementary functionality
  • monday -- Monday.com module for complementary functionality
  • todoist -- Todoist module for complementary functionality

Versions (1)

VersionTagPublished
0.1.2latest1 months ago
Install
$ robinpath add @robinpath/asana

Collaborators

Dumitru Balaban
Dumitru Balaban
@dumitru
View all @robinpath modules
Version0.1.2
LicenseMIT
Unpacked Size5.0 KB
Versions1
Weekly Downloads28
Total Downloads28
Stars0
Last Publish1 months ago
Created1 months ago

Category

productivity