> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stackone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Asana OAuth 2.0 connector profile – StackOne setup guide

> Set up the OAuth 2.0 connector profile for Asana in StackOne. One-time admin setup required before your users can link Asana accounts via Hub.

<Warning>You need appropriate permissions in your Asana workspace to create OAuth applications. Some enterprise workspaces may require IT admin approval.</Warning>

<Panel>
  <div className="not-prose guides-scope-selector" data-guides-scope-selector data-guide-actions-json="[{&#x22;id&#x22;:&#x22;asana_list_attachments&#x22;,&#x22;label&#x22;:&#x22;List Attachments&#x22;,&#x22;scopes&#x22;:[&#x22;attachments:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_attachment&#x22;,&#x22;label&#x22;:&#x22;Get Attachment&#x22;,&#x22;scopes&#x22;:[&#x22;attachments:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_attachment&#x22;,&#x22;label&#x22;:&#x22;Delete Attachment&#x22;,&#x22;scopes&#x22;:[&#x22;attachments:delete&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_audit_log_events&#x22;,&#x22;label&#x22;:&#x22;Get Audit Log Events&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_custom_fields&#x22;,&#x22;label&#x22;:&#x22;List Custom Fields&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_custom_field&#x22;,&#x22;label&#x22;:&#x22;Get Custom Field&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_custom_field&#x22;,&#x22;label&#x22;:&#x22;Create Custom Field&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_custom_field&#x22;,&#x22;label&#x22;:&#x22;Update Custom Field&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_enum_option&#x22;,&#x22;label&#x22;:&#x22;Create Enum Option&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_enum_option&#x22;,&#x22;label&#x22;:&#x22;Update Enum Option&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_custom_field_to_project&#x22;,&#x22;label&#x22;:&#x22;Add Custom Field To Project&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_custom_field_from_project&#x22;,&#x22;label&#x22;:&#x22;Remove Custom Field From Project&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_custom_field_to_portfolio&#x22;,&#x22;label&#x22;:&#x22;Add Custom Field To Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_custom_field_from_portfolio&#x22;,&#x22;label&#x22;:&#x22;Remove Custom Field From Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;custom_fields:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_dependencies&#x22;,&#x22;label&#x22;:&#x22;Add Dependencies&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_dependencies&#x22;,&#x22;label&#x22;:&#x22;Remove Dependencies&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_dependents&#x22;,&#x22;label&#x22;:&#x22;Add Dependents&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_dependents&#x22;,&#x22;label&#x22;:&#x22;Remove Dependents&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_events&#x22;,&#x22;label&#x22;:&#x22;Get Events&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_goals&#x22;,&#x22;label&#x22;:&#x22;List Goals&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_goal&#x22;,&#x22;label&#x22;:&#x22;Get Goal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_goal&#x22;,&#x22;label&#x22;:&#x22;Create Goal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_goal&#x22;,&#x22;label&#x22;:&#x22;Update Goal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_goal&#x22;,&#x22;label&#x22;:&#x22;Delete Goal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_subgoal&#x22;,&#x22;label&#x22;:&#x22;Add Subgoal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_subgoal&#x22;,&#x22;label&#x22;:&#x22;Remove Subgoal&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_memberships&#x22;,&#x22;label&#x22;:&#x22;List Memberships&#x22;,&#x22;scopes&#x22;:[&#x22;team_memberships:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_membership&#x22;,&#x22;label&#x22;:&#x22;Get Membership&#x22;,&#x22;scopes&#x22;:[&#x22;team_memberships:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_membership&#x22;,&#x22;label&#x22;:&#x22;Create Membership&#x22;,&#x22;scopes&#x22;:[&#x22;team_memberships:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_membership&#x22;,&#x22;label&#x22;:&#x22;Update Membership&#x22;,&#x22;scopes&#x22;:[&#x22;team_memberships:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_membership&#x22;,&#x22;label&#x22;:&#x22;Delete Membership&#x22;,&#x22;scopes&#x22;:[&#x22;team_memberships:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_organization_export&#x22;,&#x22;label&#x22;:&#x22;Create Organization Export&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_organization_export&#x22;,&#x22;label&#x22;:&#x22;Get Organization Export&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_portfolios&#x22;,&#x22;label&#x22;:&#x22;List Portfolios&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_portfolio&#x22;,&#x22;label&#x22;:&#x22;Get Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_portfolio&#x22;,&#x22;label&#x22;:&#x22;Create Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_portfolio&#x22;,&#x22;label&#x22;:&#x22;Update Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_portfolio&#x22;,&#x22;label&#x22;:&#x22;Delete Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_portfolio_items&#x22;,&#x22;label&#x22;:&#x22;Get Portfolio Items&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_item_to_portfolio&#x22;,&#x22;label&#x22;:&#x22;Add Item To Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_item_from_portfolio&#x22;,&#x22;label&#x22;:&#x22;Remove Item From Portfolio&#x22;,&#x22;scopes&#x22;:[&#x22;portfolios:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_members_to_project&#x22;,&#x22;label&#x22;:&#x22;Add Members To Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_members_from_project&#x22;,&#x22;label&#x22;:&#x22;Remove Members From Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_followers_to_project&#x22;,&#x22;label&#x22;:&#x22;Add Followers To Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_followers_from_project&#x22;,&#x22;label&#x22;:&#x22;Remove Followers From Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_projects&#x22;,&#x22;label&#x22;:&#x22;List Projects&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_project&#x22;,&#x22;label&#x22;:&#x22;Get Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_project&#x22;,&#x22;label&#x22;:&#x22;Create Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_project&#x22;,&#x22;label&#x22;:&#x22;Update Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_project&#x22;,&#x22;label&#x22;:&#x22;Delete Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:delete&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_project_tasks&#x22;,&#x22;label&#x22;:&#x22;Get Project Tasks&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_duplicate_project&#x22;,&#x22;label&#x22;:&#x22;Duplicate Project&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_project_templates&#x22;,&#x22;label&#x22;:&#x22;List Project Templates&#x22;,&#x22;scopes&#x22;:[&#x22;project_templates:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_project_template&#x22;,&#x22;label&#x22;:&#x22;Get Project Template&#x22;,&#x22;scopes&#x22;:[&#x22;project_templates:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_instantiate_project_template&#x22;,&#x22;label&#x22;:&#x22;Instantiate Project Template&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_typeahead_search&#x22;,&#x22;label&#x22;:&#x22;Typeahead Search&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces.typeahead:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_search_tasks&#x22;,&#x22;label&#x22;:&#x22;Search Tasks&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces.typeahead:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_sections&#x22;,&#x22;label&#x22;:&#x22;List Sections&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_section&#x22;,&#x22;label&#x22;:&#x22;Get Section&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_section&#x22;,&#x22;label&#x22;:&#x22;Create Section&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_section&#x22;,&#x22;label&#x22;:&#x22;Update Section&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_section&#x22;,&#x22;label&#x22;:&#x22;Delete Section&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_task_to_section&#x22;,&#x22;label&#x22;:&#x22;Add Task To Section&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_status_updates&#x22;,&#x22;label&#x22;:&#x22;List Status Updates&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_status_update&#x22;,&#x22;label&#x22;:&#x22;Get Status Update&#x22;,&#x22;scopes&#x22;:[&#x22;projects:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_status_update&#x22;,&#x22;label&#x22;:&#x22;Create Status Update&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_status_update&#x22;,&#x22;label&#x22;:&#x22;Delete Status Update&#x22;,&#x22;scopes&#x22;:[&#x22;projects:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_stories&#x22;,&#x22;label&#x22;:&#x22;List Stories&#x22;,&#x22;scopes&#x22;:[&#x22;stories:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_story&#x22;,&#x22;label&#x22;:&#x22;Get Story&#x22;,&#x22;scopes&#x22;:[&#x22;stories:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_story&#x22;,&#x22;label&#x22;:&#x22;Create Story&#x22;,&#x22;scopes&#x22;:[&#x22;stories:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_story&#x22;,&#x22;label&#x22;:&#x22;Update Story&#x22;,&#x22;scopes&#x22;:[&#x22;stories:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_story&#x22;,&#x22;label&#x22;:&#x22;Delete Story&#x22;,&#x22;scopes&#x22;:[&#x22;stories:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_subtasks&#x22;,&#x22;label&#x22;:&#x22;List Subtasks&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_subtask&#x22;,&#x22;label&#x22;:&#x22;Create Subtask&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_set_parent_task&#x22;,&#x22;label&#x22;:&#x22;Set Parent Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_tags&#x22;,&#x22;label&#x22;:&#x22;List Tags&#x22;,&#x22;scopes&#x22;:[&#x22;tags:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_tag&#x22;,&#x22;label&#x22;:&#x22;Get Tag&#x22;,&#x22;scopes&#x22;:[&#x22;tags:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_tag&#x22;,&#x22;label&#x22;:&#x22;Create Tag&#x22;,&#x22;scopes&#x22;:[&#x22;tags:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_tag&#x22;,&#x22;label&#x22;:&#x22;Update Tag&#x22;,&#x22;scopes&#x22;:[&#x22;tags:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_tag_to_task&#x22;,&#x22;label&#x22;:&#x22;Add Tag To Task&#x22;,&#x22;scopes&#x22;:[&#x22;tags:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_tag_from_task&#x22;,&#x22;label&#x22;:&#x22;Remove Tag From Task&#x22;,&#x22;scopes&#x22;:[&#x22;tags:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_duplicate_task&#x22;,&#x22;label&#x22;:&#x22;Duplicate Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_followers_to_task&#x22;,&#x22;label&#x22;:&#x22;Add Followers To Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_followers_from_task&#x22;,&#x22;label&#x22;:&#x22;Remove Followers From Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_project_to_task&#x22;,&#x22;label&#x22;:&#x22;Add Project To Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_project_from_task&#x22;,&#x22;label&#x22;:&#x22;Remove Project From Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_tasks&#x22;,&#x22;label&#x22;:&#x22;List Tasks&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_task&#x22;,&#x22;label&#x22;:&#x22;Get Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_task&#x22;,&#x22;label&#x22;:&#x22;Create Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_task&#x22;,&#x22;label&#x22;:&#x22;Update Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_task&#x22;,&#x22;label&#x22;:&#x22;Delete Task&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:delete&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_task_templates&#x22;,&#x22;label&#x22;:&#x22;List Task Templates&#x22;,&#x22;scopes&#x22;:[&#x22;task_templates:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_task_template&#x22;,&#x22;label&#x22;:&#x22;Get Task Template&#x22;,&#x22;scopes&#x22;:[&#x22;task_templates:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_instantiate_task_from_template&#x22;,&#x22;label&#x22;:&#x22;Instantiate Task From Template&#x22;,&#x22;scopes&#x22;:[&#x22;tasks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_teams&#x22;,&#x22;label&#x22;:&#x22;List Teams&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_team&#x22;,&#x22;label&#x22;:&#x22;Get Team&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_team&#x22;,&#x22;label&#x22;:&#x22;Update Team&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_team_users&#x22;,&#x22;label&#x22;:&#x22;Get Team Users&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_user_to_team&#x22;,&#x22;label&#x22;:&#x22;Add User To Team&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_user_from_team&#x22;,&#x22;label&#x22;:&#x22;Remove User From Team&#x22;,&#x22;scopes&#x22;:[&#x22;teams:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_time_periods&#x22;,&#x22;label&#x22;:&#x22;List Time Periods&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_time_period&#x22;,&#x22;label&#x22;:&#x22;Get Time Period&#x22;,&#x22;scopes&#x22;:[&#x22;goals:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_time_tracking_entries&#x22;,&#x22;label&#x22;:&#x22;List Time Tracking Entries&#x22;,&#x22;scopes&#x22;:[&#x22;time_tracking_entries:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_time_tracking_entry&#x22;,&#x22;label&#x22;:&#x22;Get Time Tracking Entry&#x22;,&#x22;scopes&#x22;:[&#x22;time_tracking_entries:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_time_tracking_entry&#x22;,&#x22;label&#x22;:&#x22;Create Time Tracking Entry&#x22;,&#x22;scopes&#x22;:[&#x22;time_tracking_entries:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_time_tracking_entry&#x22;,&#x22;label&#x22;:&#x22;Update Time Tracking Entry&#x22;,&#x22;scopes&#x22;:[&#x22;time_tracking_entries:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_time_tracking_entry&#x22;,&#x22;label&#x22;:&#x22;Delete Time Tracking Entry&#x22;,&#x22;scopes&#x22;:[&#x22;time_tracking_entries:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_users&#x22;,&#x22;label&#x22;:&#x22;List Users&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user&#x22;,&#x22;label&#x22;:&#x22;Get User&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_current_user&#x22;,&#x22;label&#x22;:&#x22;Get Current User&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user_favorites&#x22;,&#x22;label&#x22;:&#x22;Get User Favorites&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user_teams&#x22;,&#x22;label&#x22;:&#x22;Get User Teams&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user_workspace_memberships&#x22;,&#x22;label&#x22;:&#x22;Get User Workspace Memberships&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user_team_memberships&#x22;,&#x22;label&#x22;:&#x22;Get User Team Memberships&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_user_task_list&#x22;,&#x22;label&#x22;:&#x22;Get User Task List&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_tasks_from_user_task_list&#x22;,&#x22;label&#x22;:&#x22;Get Tasks From User Task List&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_webhooks&#x22;,&#x22;label&#x22;:&#x22;List Webhooks&#x22;,&#x22;scopes&#x22;:[&#x22;webhooks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_webhook&#x22;,&#x22;label&#x22;:&#x22;Get Webhook&#x22;,&#x22;scopes&#x22;:[&#x22;webhooks:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_create_webhook&#x22;,&#x22;label&#x22;:&#x22;Create Webhook&#x22;,&#x22;scopes&#x22;:[&#x22;webhooks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_webhook&#x22;,&#x22;label&#x22;:&#x22;Update Webhook&#x22;,&#x22;scopes&#x22;:[&#x22;webhooks:write&#x22;]},{&#x22;id&#x22;:&#x22;asana_delete_webhook&#x22;,&#x22;label&#x22;:&#x22;Delete Webhook&#x22;,&#x22;scopes&#x22;:[&#x22;webhooks:delete&#x22;]},{&#x22;id&#x22;:&#x22;asana_list_workspaces&#x22;,&#x22;label&#x22;:&#x22;List Workspaces&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_get_workspace&#x22;,&#x22;label&#x22;:&#x22;Get Workspace&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_update_workspace&#x22;,&#x22;label&#x22;:&#x22;Update Workspace&#x22;,&#x22;scopes&#x22;:[&#x22;workspaces:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_add_user_to_workspace&#x22;,&#x22;label&#x22;:&#x22;Add User To Workspace&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]},{&#x22;id&#x22;:&#x22;asana_remove_user_from_workspace&#x22;,&#x22;label&#x22;:&#x22;Remove User From Workspace&#x22;,&#x22;scopes&#x22;:[&#x22;users:read&#x22;]}]" style={{ borderRadius: '8px', padding: '16px', marginBottom: '24px' }}>
    <div className="guides-scope-selector__title" style={{ fontSize: '16px', fontWeight: '600', marginBottom: '12px' }}>Select Actions to adjust the guide</div>
    <div className="guides-scope-selector__muted" style={{ fontSize: '13px', marginBottom: '12px' }}>Some actions may require additional configuration in the provider to be accessible. Choose the actions you need and the guide will be updated.</div>

    <div style={{ display: 'flex', gap: '8px', marginBottom: '12px', flexWrap: 'wrap' }}>
      <input type="text" placeholder="Search actions..." className="guides-scope-selector__input" data-guide-action-search style={{ padding: '8px 12px', borderRadius: '6px', fontSize: '13px', flex: 1, minWidth: '160px' }} />

      <button type="button" className="guides-scope-selector__quick-btn" data-guide-select-all style={{ padding: '6px 10px', borderRadius: '6px', fontSize: '12px', cursor: 'pointer' }}>Select all</button>
      <button type="button" className="guides-scope-selector__quick-btn" data-guide-clear style={{ padding: '6px 10px', borderRadius: '6px', fontSize: '12px', cursor: 'pointer' }}>Clear</button>
    </div>

    <div className="guides-scope-selector__list" style={{ maxHeight: '240px', overflowY: 'auto', borderRadius: '6px', marginBottom: '12px' }}>
      <div className="guides-scope-selector__list-header" style={{ display: 'flex', alignItems: 'center', gap: '10px', padding: '8px 12px', fontSize: '12px', fontWeight: '600', position: 'sticky', top: 0, zIndex: 1 }}>
        <div style={{ width: '16px', flexShrink: 0 }} />

        <div style={{ flex: 1, textAlign: 'left' }}>Action</div>
        <div style={{ minWidth: '120px', marginLeft: 'auto', textAlign: 'right' }}>Scope(s)</div>
      </div>

      <div className="guides-scope-selector__muted" data-guide-loading style={{ padding: '16px', textAlign: 'center', fontSize: '13px' }}>Loading actions...</div>
      <div className="guides-scope-selector__muted" data-guide-no-results hidden style={{ padding: '16px', textAlign: 'center', fontSize: '13px' }}>No actions match your search.</div>
    </div>

    <div className="guides-scope-selector__url-section" style={{ marginTop: '12px', paddingTop: '12px' }}>
      <div className="guides-scope-selector__muted" style={{ fontSize: '12px', fontWeight: '500', marginBottom: '6px' }}>Dynamic Guide URL</div>

      <div style={{ display: 'flex', alignItems: 'center', gap: '8px', flexWrap: 'wrap' }}>
        <input type="text" readOnly className="guides-scope-selector__input" data-guide-url style={{ flex: 1, minWidth: '200px', padding: '8px 10px', borderRadius: '6px', fontSize: '12px', fontFamily: 'monospace' }} />

        <button type="button" className="guides-scope-selector__copy-btn" data-guide-copy-url style={{ width: '120px', padding: '8px 14px', borderRadius: '6px', fontSize: '13px', fontWeight: '500', cursor: 'pointer', whiteSpace: 'nowrap', marginLeft: 'auto' }}>Copy URL</button>
      </div>

      <div style={{ marginTop: '12px' }}>
        <div className="guides-scope-selector__muted" style={{ fontSize: '12px', fontWeight: '500', marginBottom: '6px' }}>Scopes Selected</div>

        <div style={{ display: 'flex', alignItems: 'stretch', gap: '8px', flexWrap: 'wrap' }}>
          <pre className="guides-scope-selector__input" role="textbox" aria-readonly="true" tabIndex={0} data-guide-scopes-output style={{ flex: 1, minWidth: '200px', minHeight: '88px', maxHeight: '120px', overflowY: 'auto', margin: 0, padding: '8px 10px', borderRadius: '6px', fontSize: '12px', fontFamily: 'monospace', whiteSpace: 'pre-wrap' }} />

          <div className="guides-scope-selector__muted" style={{ display: 'flex', flexDirection: 'column', gap: '8px', fontSize: '12px', fontWeight: '500', flexShrink: 0, alignItems: 'flex-start' }}>
            <div style={{ whiteSpace: 'nowrap' }}>Separator</div>

            <select className="guides-scope-selector__input" data-guide-scope-delimiter style={{ width: '100%', padding: '6px 10px', borderRadius: '6px', fontSize: '12px' }}>
              <option value="space">Space</option>
              <option value="comma">Comma</option>
              <option value="semicolon">Semicolon</option>
              <option value="pipe">Pipe</option>
              <option value="newline">Newline</option>
            </select>

            <button type="button" className="guides-scope-selector__copy-btn" data-guide-copy-scopes style={{ width: '120px', padding: '8px 14px', borderRadius: '6px', fontSize: '13px', fontWeight: '500', cursor: 'pointer', whiteSpace: 'nowrap' }}>Copy scopes</button>
          </div>
        </div>
      </div>
    </div>
  </div>
</Panel>

<section data-guide-section data-guide-scopes="">
  <h2>Prerequisites</h2>

  <p>Verify you have the necessary permissions before starting setup.</p>

  <ul>
    <li>Admin or appropriate permissions in your Asana workspace.</li>
    <li>Access to create applications in the Asana Developer Console.</li>
  </ul>
</section>

<section data-guide-section data-guide-scopes="">
  <h2>Create OAuth application</h2>

  <p>Register an OAuth application in the Asana Developer Console.</p>

  <Steps>
    <Step title="Sign in to Asana">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Sign in to your <a href="https://app.asana.com" target="_blank" rel="noopener noreferrer">Asana account</a>.</p>

        <ul>
          <li>Click your profile avatar in the top-right corner and select <strong>Settings</strong>.</li>
          <li>Navigate to the <strong>Apps</strong> tab.</li>
          <li>Scroll to <strong>Build new apps</strong> and click <strong>View developer console</strong>.</li>
        </ul>
      </div>
    </Step>

    <Step title="Create a new app">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Click <strong>+ Create new app</strong> in the Developer Console.</p>

        <ul>
          <li>Enter an <strong>App name</strong> (e.g., `StackOne Integration`).</li>
          <li>Select <strong>API app</strong> as the app type.</li>
          <li>Check the box <strong>I agree to the Asana API Terms</strong>.</li>
          <li>Click <strong>Create app</strong>.</li>
        </ul>
      </div>
    </Step>
  </Steps>
</section>

<section data-guide-section data-guide-scopes="">
  <h2>Configure OAuth settings</h2>

  <p>Set up the redirect URL and permission scopes for your application.</p>

  <Steps>
    <Step title="Add redirect URL">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Navigate to the <strong>OAuth</strong> tab in your app settings.</p>

        <ul>
          <li>In the <strong>Redirect URLs</strong> section, click <strong>+ Add redirect URL</strong>.</li>
          <li>Enter exactly: `https://api.stackone.com/connect/oauth2/asana/callback`</li>
        </ul>
      </div>
    </Step>

    <Step title="Configure permission scopes">
      <div data-guide-step data-guide-scopes="attachments:read,attachments:write,attachments:delete,custom_fields:read,custom_fields:write,goals:read,portfolios:read,portfolios:write,project_templates:read,projects:read,projects:write,projects:delete,stories:read,stories:write,tags:read,tags:write,task_custom_types:read,task_templates:read,tasks:read,tasks:write,tasks:delete,team_memberships:read,teams:read,time_tracking_entries:read,timesheet_approval_statuses:read,timesheet_approval_statuses:write,users:read,webhooks:read,webhooks:write,webhooks:delete,workspaces:read,workspaces.typeahead:read" data-guide-display-scopes-list="attachments:read,attachments:write,attachments:delete,custom_fields:read,custom_fields:write,goals:read,portfolios:read,portfolios:write,project_templates:read,projects:read,projects:write,projects:delete,stories:read,stories:write,tags:read,tags:write,task_custom_types:read,task_templates:read,tasks:read,tasks:write,tasks:delete,team_memberships:read,teams:read,time_tracking_entries:read,timesheet_approval_statuses:read,timesheet_approval_statuses:write,users:read,webhooks:read,webhooks:write,webhooks:delete,workspaces:read,workspaces.typeahead:read">
        <div className="connector-guide-actions-badge" data-guide-actions-badge data-guide-actions-badge-scopes="attachments:read,attachments:write,attachments:delete,custom_fields:read,custom_fields:write,goals:read,portfolios:read,portfolios:write,project_templates:read,projects:read,projects:write,projects:delete,stories:read,stories:write,tags:read,tags:write,task_custom_types:read,task_templates:read,tasks:read,tasks:write,tasks:delete,team_memberships:read,teams:read,time_tracking_entries:read,timesheet_approval_statuses:read,timesheet_approval_statuses:write,users:read,webhooks:read,webhooks:write,webhooks:delete,workspaces:read,workspaces.typeahead:read" style={{ display: 'block', width: 'fit-content', maxWidth: '100%', padding: '2px 8px', borderRadius: '8px', fontSize: '12px', marginBottom: '8px', marginTop: '-10px', whiteSpace: 'nowrap', overflowX: 'auto', overflowY: 'hidden', msOverflowStyle: 'none', scrollbarWidth: 'none' }}>
          <span>Enables actions: </span><span data-guide-actions-badge-labels>Add Custom Field To Portfolio, Add Custom Field To Project, Add Dependencies, Add Dependents, Add Followers To Project, Add Followers To Task, Add Item To Portfolio, Add Members To Project, Add Project To Task, Add Subgoal, Add Tag To Task, Add Task To Section, Add User To Team, Add User To Workspace, Create Custom Field, Create Enum Option, Create Goal, Create Membership, Create Organization Export, Create Portfolio, Create Project, Create Section, Create Status Update, Create Story, Create Subtask, Create Tag, Create Task, Create Time Tracking Entry, Create Webhook, Delete Attachment, Delete Goal, Delete Membership, Delete Portfolio, Delete Project, Delete Section, Delete Status Update, Delete Story, Delete Task, Delete Time Tracking Entry, Delete Webhook, Duplicate Project, Duplicate Task, Get Attachment, Get Audit Log Events, Get Current User, Get Custom Field, Get Events, Get Goal, Get Membership, Get Organization Export, Get Portfolio, Get Portfolio Items, Get Project, Get Project Tasks, Get Project Template, Get Section, Get Status Update, Get Story, Get Tag, Get Task, Get Task Template, Get Tasks From User Task List, Get Team, Get Team Users, Get Time Period, Get Time Tracking Entry, Get User, Get User Favorites, Get User Task List, Get User Team Memberships, Get User Teams, Get User Workspace Memberships, Get Webhook, Get Workspace, Instantiate Project Template, Instantiate Task From Template, List Attachments, List Custom Fields, List Goals, List Memberships, List Portfolios, List Project Templates, List Projects, List Sections, List Status Updates, List Stories, List Subtasks, List Tags, List Task Templates, List Tasks, List Teams, List Time Periods, List Time Tracking Entries, List Users, List Webhooks, List Workspaces, Remove Custom Field From Portfolio, Remove Custom Field From Project, Remove Dependencies, Remove Dependents, Remove Followers From Project, Remove Followers From Task, Remove Item From Portfolio, Remove Members From Project, Remove Project From Task, Remove Subgoal, Remove Tag From Task, Remove User From Team, Remove User From Workspace, Search Tasks, Set Parent Task, Typeahead Search, Update Custom Field, Update Enum Option, Update Goal, Update Membership, Update Portfolio, Update Project, Update Section, Update Story, Update Tag, Update Task, Update Team, Update Time Tracking Entry, Update Webhook, Update Workspace</span>
        </div>

        <p>Select the required permissions for the integration. Enable <strong>Full permissions</strong> for all scopes, or select individual scopes below.</p>

        <div style={{ marginTop: '8px' }} data-guide-display-scopes>
          <div className="connector-guide-scopes-container connector-guide-scopes-container--scrollable">
            <ul className="not-prose" style={{ listStyleType: "'- '", paddingLeft: '1em', margin: 0 }}>
              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="attachments:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy attachments:read" title="Copy scope" data-copy="attachments:read">
                  <span className="connector-guide-scope-copy__label">attachments:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="attachments:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy attachments:write" title="Copy scope" data-copy="attachments:write">
                  <span className="connector-guide-scope-copy__label">attachments:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="attachments:delete">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy attachments:delete" title="Copy scope" data-copy="attachments:delete">
                  <span className="connector-guide-scope-copy__label">attachments:delete</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="custom_fields:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy custom_fields:read" title="Copy scope" data-copy="custom_fields:read">
                  <span className="connector-guide-scope-copy__label">custom\_fields:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="custom_fields:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy custom_fields:write" title="Copy scope" data-copy="custom_fields:write">
                  <span className="connector-guide-scope-copy__label">custom\_fields:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="goals:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy goals:read" title="Copy scope" data-copy="goals:read">
                  <span className="connector-guide-scope-copy__label">goals:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="portfolios:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy portfolios:read" title="Copy scope" data-copy="portfolios:read">
                  <span className="connector-guide-scope-copy__label">portfolios:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="portfolios:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy portfolios:write" title="Copy scope" data-copy="portfolios:write">
                  <span className="connector-guide-scope-copy__label">portfolios:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="project_templates:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy project_templates:read" title="Copy scope" data-copy="project_templates:read">
                  <span className="connector-guide-scope-copy__label">project\_templates:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="projects:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy projects:read" title="Copy scope" data-copy="projects:read">
                  <span className="connector-guide-scope-copy__label">projects:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="projects:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy projects:write" title="Copy scope" data-copy="projects:write">
                  <span className="connector-guide-scope-copy__label">projects:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="projects:delete">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy projects:delete" title="Copy scope" data-copy="projects:delete">
                  <span className="connector-guide-scope-copy__label">projects:delete</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="stories:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy stories:read" title="Copy scope" data-copy="stories:read">
                  <span className="connector-guide-scope-copy__label">stories:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="stories:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy stories:write" title="Copy scope" data-copy="stories:write">
                  <span className="connector-guide-scope-copy__label">stories:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="tags:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy tags:read" title="Copy scope" data-copy="tags:read">
                  <span className="connector-guide-scope-copy__label">tags:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="tags:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy tags:write" title="Copy scope" data-copy="tags:write">
                  <span className="connector-guide-scope-copy__label">tags:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="task_custom_types:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy task_custom_types:read" title="Copy scope" data-copy="task_custom_types:read">
                  <span className="connector-guide-scope-copy__label">task\_custom\_types:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="task_templates:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy task_templates:read" title="Copy scope" data-copy="task_templates:read">
                  <span className="connector-guide-scope-copy__label">task\_templates:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="tasks:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy tasks:read" title="Copy scope" data-copy="tasks:read">
                  <span className="connector-guide-scope-copy__label">tasks:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="tasks:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy tasks:write" title="Copy scope" data-copy="tasks:write">
                  <span className="connector-guide-scope-copy__label">tasks:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="tasks:delete">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy tasks:delete" title="Copy scope" data-copy="tasks:delete">
                  <span className="connector-guide-scope-copy__label">tasks:delete</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="team_memberships:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy team_memberships:read" title="Copy scope" data-copy="team_memberships:read">
                  <span className="connector-guide-scope-copy__label">team\_memberships:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="teams:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy teams:read" title="Copy scope" data-copy="teams:read">
                  <span className="connector-guide-scope-copy__label">teams:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="time_tracking_entries:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy time_tracking_entries:read" title="Copy scope" data-copy="time_tracking_entries:read">
                  <span className="connector-guide-scope-copy__label">time\_tracking\_entries:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="timesheet_approval_statuses:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy timesheet_approval_statuses:read" title="Copy scope" data-copy="timesheet_approval_statuses:read">
                  <span className="connector-guide-scope-copy__label">timesheet\_approval\_statuses:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="timesheet_approval_statuses:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy timesheet_approval_statuses:write" title="Copy scope" data-copy="timesheet_approval_statuses:write">
                  <span className="connector-guide-scope-copy__label">timesheet\_approval\_statuses:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="users:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy users:read" title="Copy scope" data-copy="users:read">
                  <span className="connector-guide-scope-copy__label">users:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="webhooks:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy webhooks:read" title="Copy scope" data-copy="webhooks:read">
                  <span className="connector-guide-scope-copy__label">webhooks:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="webhooks:write">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy webhooks:write" title="Copy scope" data-copy="webhooks:write">
                  <span className="connector-guide-scope-copy__label">webhooks:write</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="webhooks:delete">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy webhooks:delete" title="Copy scope" data-copy="webhooks:delete">
                  <span className="connector-guide-scope-copy__label">webhooks:delete</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="workspaces:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy workspaces:read" title="Copy scope" data-copy="workspaces:read">
                  <span className="connector-guide-scope-copy__label">workspaces:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>

              <li style={{ overflowWrap: 'anywhere', wordBreak: 'break-word' }} data-guide-display-scope="workspaces.typeahead:read">
                <button type="button" className="connector-guide-scope-copy" aria-label="Copy workspaces.typeahead:read" title="Copy scope" data-copy="workspaces.typeahead:read">
                  <span className="connector-guide-scope-copy__label">workspaces.typeahead:read</span>
                  <span className="connector-guide-scope-copy__icon" aria-hidden="true">⧉</span>
                </button>
              </li>
            </ul>
          </div>
        </div>
      </div>
    </Step>

    <Step title="Copy Client credentials">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Navigate to the <strong>Basic information</strong> tab and scroll to the <strong>App credentials</strong> section.</p>

        <ul>
          <li>Copy the <strong>Client ID</strong>.</li>
          <li>Click <strong>Copy</strong> next to the <strong>Client Secret</strong>.</li>
          <li>Store both values securely for use later — if the secret is regenerated, existing integrations will need updating.</li>
        </ul>
      </div>
    </Step>
  </Steps>
</section>

## Creating the StackOne Connector Profile

To create the Connector Profile in StackOne for <strong>Asana</strong>:

<Steps>
  <Step title="Navigate to Connector Profiles">
    Login to StackOne and navigate to [Connector Profiles](https://app.stackone.com/connector_profiles)
  </Step>

  <Step title="Create New Connector Profile">
    <ul>
      <li>Click <strong>+ Connector Profile</strong></li>
      <li>Search for and select <strong>Asana</strong></li>
      <li>Select <strong>Type</strong> as <strong>OAuth 2.0</strong></li>

      <li>
        Fill out the fields using details retrieved from your provider:

        <ul style={{ marginLeft: '20px' }}>
          <li><strong>Client ID</strong></li>
          <li><strong>Client Secret</strong></li>
          <li><strong>Scopes</strong> (Optional)</li>
        </ul>
      </li>

      <li>(Optional) Select <strong>Actions</strong> to be enabled for this Connector Profile</li>
      <li>Click <strong>Create profile</strong></li>
    </ul>
  </Step>
</Steps>

Congratulations! The new Connector Profile will now show up in your project ready to be used. You can now continue to <a href="/guides/accounts-section#linking-accounts">Link Accounts</a> for <strong>Asana</strong>.
