Asana

Overview

Asana is a comprehensive work management platform that helps teams organize, track, and manage their work. Through Langdock’s integration, you can manage workspaces, projects, tasks, and teams directly from your conversations.

Authentication: OAuth Category: Productivity & Collaboration Availability: All workspace plans


Available Actions

Workspaces & Teams

List Workspaces

asana.list_workspaces Get all accessible workspaces in your Asana account. Requires Confirmation: Yes

Parameters:

  • limit (number, optional): Limit number of results (1-100)

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“List all my Asana workspaces”


Get Teams for Workspace

asana.get_teams_for_workspace List all teams in a specific workspace. Requires Confirmation: Yes

Parameters:

  • workspaceGid (string, required): Workspace GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of teams to return

Example Usage:

“Show me all teams in workspace 12345”


Get Teams for User

asana.get_teams_for_user Get teams a user belongs to. Requires Confirmation: Yes

Parameters:

  • userGid (string, required): User identifier (‘me’, email, or user GID)

  • organization (string, required): Workspace or organization GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of teams to return

Example Usage:

“Show me all teams that I’m part of in organization 12345”


Users

Get Users

asana.get_users List users across accessible workspaces; optionally filter by workspace or team. Requires Confirmation: Yes

Parameters:

  • workspace (string, optional): Workspace GID to filter users

  • team (string, optional): Team GID to filter users

  • limit (number, optional): Maximum number of users to return

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Show me all users in the Marketing team”


Get User

asana.get_user Get user details by ID, email, or “me”. Requires Confirmation: Yes

Parameters:

  • userId (string, optional): User identifier (‘me’, email, or user GID)

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get information about the current user” or “Get information about user [email protected]envelope


Goals

Get Goals

asana.get_goals List goals filtered by context (portfolio, project, task, workspace, or team). Requires Confirmation: Yes

Parameters:

  • workspace (string, optional): Workspace GID to filter goals

  • team (string, optional): Team GID to filter goals

  • project (string, optional): Project GID to filter goals

  • portfolio (string, optional): Portfolio GID to filter goals

  • task (string, optional): Task GID to filter goals

  • timePeriod (string, optional): Time period IDs to filter goals

  • isWorkspaceLevel (boolean, optional): Filter to workspace-level goals

  • limit (number, optional): Maximum number of goals to return

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Show me all goals for the Marketing team”


Get Goal

asana.get_goal Get detailed goal data. Requires Confirmation: Yes

Parameters:

  • goalGid (string, required): Goal GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get details for goal 12345”


Get Parent Goals for Goal

asana.get_parent_goals_for_goal List all parent goals for a specific goal. Requires Confirmation: Yes

Parameters:

  • goalGid (string, required): Goal GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Show me all parent goals for goal 12345”


Projects

Get Projects

asana.get_projects List projects filtered by workspace. Requires Confirmation: Yes

Parameters:

  • workspace (string, required): Workspace GID

  • team (string, optional): Filter projects on team id

  • archived (boolean, optional): Include archived projects

  • limit (number, optional): Maximum number of projects to return

  • optFields (string, optional): Comma-separated fields to include. Example: name,owner.name,workspace.name,team.name,archived,current_status.color

Example Usage:

“Show me all active projects in workspace 12345”


Get Projects for Workspace

asana.get_projects_for_workspace Get ALL projects in a workspace across all teams. Requires Confirmation: Yes

Parameters:

  • workspaceGid (string, required): Workspace GID

  • archived (boolean, optional): Filter projects by archived status

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of projects to return

Example Usage:

“Get all projects in my marketing workspace”


Get Projects for Team

asana.get_projects_for_team List all projects for a team. Requires Confirmation: Yes

Parameters:

  • teamGid (string, required): Team GID

  • archived (boolean, optional): Filter projects by archived status

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of projects to return

Example Usage:

“Show me all projects for the Engineering team”


Get Project

asana.get_project Get detailed project data. Requires Confirmation: Yes

Parameters:

  • projectId (string, required): Project GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get full details for project 12345”


Get Project Task Counts

asana.get_project_task_counts Get task statistics for a project. Requires Confirmation: Yes

Parameters:

  • projectId (string, required): Project GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get task counts for project 12345”


Create Project

asana.create_project Create new project in Asana. Requires Confirmation: Yes

Parameters:

  • name (string, required): Name of the project

  • workspace (string, optional): Workspace GID

  • team (string, optional): Team GID

  • notes (string, optional): Project description

  • htmlNotes (string, optional): HTML-formatted description

  • owner (string, optional): User identifier (‘me’, email, or user GID)

  • followers (string, optional): Comma-separated list of user GIDs

  • color (string, optional): Project color

  • dueDate (string, optional): Due date (YYYY-MM-DD)

  • startDate (string, optional): Start date (YYYY-MM-DD)

  • defaultView (string, optional): Default view

  • public (boolean, optional): Public to workspace

  • archived (boolean, optional): Archived status

  • isTemplate (boolean, optional): Is template

  • privacySetting (string, optional): Privacy level

  • defaultAccessLevel (string, optional): Default access level

  • minimumAccessLevelForSharing (string, optional): Minimum access level for sharing

  • minimumAccessLevelForCustomization (string, optional): Minimum access level for customization

  • customFields (string, optional): JSON string of custom fields

  • icon (string, optional): Project icon type

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Create a new project called ‘Q1 Marketing Campaign’ in the Marketing team”


Tasks

Get Tasks

asana.get_tasks List tasks filtered by context (workspace/project/tag/section/user list). Requires Confirmation: Yes

Parameters:

  • workspace (string, optional): Workspace GID

  • project (string, optional): Project GID

  • tag (string, optional): Tag GID

  • section (string, optional): Section GID

  • assignee (string, optional): User identifier (‘me’, email, or user GID)

  • completedSince (string, optional): Filter tasks completed since date

  • modifiedSince (string, optional): Filter tasks modified since date

  • userTaskList (string, optional): User task list GID

  • limit (number, optional): Number of tasks to return (1-100)

  • offset (string, optional): Pagination offset token

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Show me all tasks assigned to me in the Q4 Planning project”


Search Tasks

asana.search_tasks Advanced task search with multiple filters. Requires Confirmation: Yes

Parameters include (partial list):

  • workspace (string, required): Workspace GID

  • text (string, optional): Text to search for in task name or description

  • completed (boolean, optional): Filter for completed or incomplete tasks

  • assigneeAny, assigneeNot, projectsAny, projectsAll, projectsNot (string, optional): Comma-separated lists for inclusion/exclusion

  • tagsAny, tagsAll, tagsNot (string, optional)

  • sectionsAny, sectionsAll, sectionsNot (string, optional)

  • portfoliosAny, teamsAny, followersAny, followersNot (string, optional)

  • createdByAny, createdByNot, assignedByAny, assignedByNot (string, optional)

  • hasAttachment, isBlocked, isBlocking, isSubtask (boolean, optional)

  • resourceSubtype (string, optional)

  • customFields (string, optional): JSON string of custom field filters

  • Date/datetime filters for dueOn, dueAt, startOn, createdOn, modifiedOn, completedOn, createdAt, modifiedAt, completedAt (ISO 8601)

  • sortBy (string, optional): Field to sort by (defaults to modified_at)

  • sortAscending (boolean, optional): Defaults to false

  • limit (number, optional): Number of results to return (1-100)

  • optFields (string, optional): Comma-separated fields to include

  • optPretty (boolean, optional): Pretty output with line breaks and indentation

Example Usage:

“Search for all tasks mentioning ‘budget review’ in the Finance workspace” “Find all incomplete tasks assigned to me that are due this week”


Get Task

asana.get_task Get full task details by ID. Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get full details for task 12345”


Create Task

asana.create_task Create task in Asana with context. Requires Confirmation: Yes

Parameters:

  • name (string, required): Name of the task

  • workspace (string, optional): Workspace GID

  • projectId (string, optional): Project GID

  • parent (string, optional): Parent task GID

  • assignee (string, optional): User identifier (‘me’, email, or user GID)

  • followers (string, optional): Comma-separated list of user identifiers

  • notes (string, optional): Task description

  • htmlNotes (string, optional): HTML-formatted description

  • completed (boolean, optional): Mark as completed

  • dueOn (string, optional): Due date (YYYY-MM-DD)

  • dueAt (string, optional): Due date and time

  • startOn (string, optional): Start date (YYYY-MM-DD)

  • startAt (string, optional): Start date and time

  • assigneeSection (string, optional): Section GID

  • resourceSubtype (string, optional): Task type

  • approvalStatus (string, optional): Approval status

  • customType (string, optional): Custom type GID

  • customTypeStatusOption (string, optional): Custom type status option GID

  • customFields (string, optional): JSON string of custom fields

Example Usage:

“Create a task ‘Review Q4 budget’ due on 2024-03-15 and assign it to [email protected]envelope


Update Task

asana.update_task Update existing task properties. Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • name (string, optional): Task name

  • notes (string, optional): Task description

  • assignee (string, optional): User identifier (‘me’, email, or user GID)

  • dueOn (string, optional): Due date (YYYY-MM-DD)

  • dueAt (string, optional): Due date and time

  • completed (boolean, optional): Mark as completed

  • customFields (string, optional): JSON string of custom fields

Example Usage:

“Mark task 123456 as completed and update the notes”


Set Parent for Task

asana.set_parent_for_task Change task parent (convert to/from subtask). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • parent (string, required): Parent task GID

  • insertBefore (string, optional): Insert before task GID

  • insertAfter (string, optional): Insert after task GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Make task 12345 a subtask of task 67890”


Set Task Dependencies

asana.set_task_dependencies Set tasks this task depends on (prerequisites). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • dependencies (object, required): Array of task GIDs

Example Usage:

“Set task 12345 to depend on tasks 67890 and 11111”


Set Task Dependents

asana.set_task_dependents Set tasks blocked by this task (tasks waiting on this one). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • dependents (object, required): Array of task GIDs

Example Usage:

“Set tasks 67890 and 11111 to wait on task 12345”


Add Task Followers

asana.add_task_followers Add followers to task (team members to notify of updates). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • followers (string, required): Comma-separated list of user identifiers

Example Usage:

“Add [email protected]envelope and [email protected]envelope as followers to task 12345”


Remove Task Followers

asana.remove_task_followers Remove followers from task (stop notification subscriptions). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • followers (string, required): Comma-separated list of user identifiers

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Remove [email protected]envelope from following task 12345”


Stories & Comments

Get Stories for Task

asana.get_stories_for_task Get task activity history (comments, status changes, system events). Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • limit (number, optional): Number of stories to return (1-100)

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Show me all comments and activity for task 12345”


Get Story

asana.get_story Get a single story by GID. Requires Confirmation: Yes

Parameters:

  • storyGid (string, required): Story GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get details for story 12345”


Create Task Story

asana.create_task_story Add explicit comment to task. Requires Confirmation: Yes

Parameters:

  • taskId (string, required): Task GID

  • text (string, required): Comment text

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Add a comment to task 12345 saying ‘This looks good to me’”


Tags

Get Tags in Workspace

asana.get_tags_in_workspace Returns compact tag records filtered by workspace. Requires Confirmation: Yes

Parameters:

  • workspaceGid (string, required): Workspace GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of tags to return

Example Usage:

“Show all tags in the Marketing workspace”


Attachments

Get Attachments for Object

asana.get_attachments_for_object List attachment ids and metadata for a project, task, or project brief (no download). Requires Confirmation: Yes

Parameters:

  • parent (string, required): Project or task GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of attachments to return

Example Usage:

“List all attachments for task 12345”


Download Attachment

asana.download_attachment Get detailed attachment data including name, resource type, download_url, view_url, and parent. Requires Confirmation: Yes

Parameters:

  • attachmentGid (string, required): Attachment GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get download URL for attachment 12345”


Download Attachments for Object

asana.download_attachments_for_object Download all attachments for a project, task, or project brief. Requires Confirmation: Yes

Parameters:

  • parent (string, required): Project or task GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of attachments to return

Example Usage:

“Download all attachments for project 12345”


Portfolios

Get Portfolios

asana.get_portfolios List portfolios filtered by workspace, owner, or team. Requires Confirmation: Yes

Parameters:

  • owner (string, required): User identifier (‘me’ or user GID)

  • workspace (string, optional): Workspace GID

  • team (string, optional): Team GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of portfolios to return

Example Usage:

“Show me all portfolios I own in workspace 12345”


Get Portfolio

asana.get_portfolio Get detailed portfolio data by ID. Requires Confirmation: Yes

Parameters:

  • portfolioGid (string, required): Portfolio GID

  • optFields (string, optional): Comma-separated fields to include

Example Usage:

“Get full details for portfolio 12345”


Get Portfolio Items

asana.get_portfolio_items Get the items in a portfolio in compact form. Requires Confirmation: Yes

Parameters:

  • portfolioGid (string, required): Portfolio GID

  • optFields (string, optional): Comma-separated fields to include

  • limit (number, optional): Maximum number of items to return

Example Usage:

“Show me all items in portfolio 12345”


Typeahead Search

asana.typeahead_search Quick search across Asana objects. Requires Confirmation: Yes

Parameters:

  • workspaceGid (string, required): Workspace GID

  • resourceType (string, required): Resource type to search

  • query (string, optional): Search query

  • count (number, optional): Number of results to return (1-100)

Example Usage:

“Quick search for projects matching ‘marketing’ in workspace 12345”


Common Use Cases

Project Management

  • Create and organize projects

  • Track project progress

  • Manage project timelines

Task Tracking

  • Create and assign tasks

  • Update task status

  • Set due dates and priorities

Team Collaboration

  • Organize teams and workspaces

  • Assign work to team members

  • Track team productivity

Workflow Automation

  • Search and filter tasks

  • Bulk update task properties

  • Generate status reports


Best Practices

Performance Tips:

  • Use limit parameter to control result size

  • Utilize optFields to reduce data transfer

  • Cache workspace and project GIDs for repeated use

  • Use search for complex filtering needs

Important Considerations:

  • GIDs are permanent unique identifiers

  • Due dates must be in YYYY-MM-DD format

  • Completed tasks remain in the system

  • Rate limits apply per OAuth token


Workflow Examples

1

Daily Task Management

  • List workspaces to identify your main workspace

  • Get tasks assigned to you

  • Update task status as you work

  • Mark tasks as completed

  • Create new tasks for tomorrow

2

Project Setup

  • Create a new project in the appropriate team

  • Add initial tasks to the project

  • Assign tasks to team members

  • Set due dates for milestones

  • Add relevant tags for organization


Troubleshooting

Issue
Solution

"Workspace not found"

Verify workspace GID using List Workspaces

"Invalid date format"

Use YYYY-MM-DD format for dates

"Permission denied"

Check OAuth token permissions

"Task not found"

Ensure task GID is correct and accessible



Support

For additional help with the Asana integration, contact [email protected]envelope