Village Product and Developer Docs
  • πŸ“˜Welcome to Village Labs
    • Welcome to Village Labs
    • Self Service Onboarding
    • Help Pages
      • Adding and Deleting Users
      • Mapping Users to Source tool IDs
      • How to follow or unfollow other users
      • Configuring & Removing Daily Slack Notification Whitelist
      • Changing the Reporting Lines & Teams
      • Following Custom Reports
      • Google Drive Privacy: When will my documents appear in Village Reports?
    • Custom Reports
      • Creating Team Reports
      • Creating Custom Reports & Custom Prompt Library
    • Meetings
      • Connecting your Calendar
      • Configuring your Meetings
      • Meeting Summary Reports
    • Village Assistant
      • Github PR Review Tool
    • Security & Compliance
    • Data Privacy & Permissions
  • πŸ”ŒData Connections
    • Airtable
    • Ashby
    • Clickup
      • Finding ClickUp User IDs
    • Figma
    • Github
      • Finding GitHub User IDs
    • Gitlab
    • Google - OAuth (Recommended)
    • Google - Manual Connection
    • Hubspot
    • Jira
      • Finding Jira User IDs
    • Confluence
      • Finding Confluence / Jira User IDs
    • Linear
    • Asana
    • Monday
    • Notion
    • Pipedrive
    • Slack
    • Basecamp
    • Zoom
  • πŸ‘©β€πŸ’»Legacy Developer Docs
    • Developer Quickstart
    • Village APIs: Introduction
      • Activity API
      • User Status API
      • Patch User API
      • Segments API
      • Redemption API
      • Master Award Controls
      • Connections (Referrals) APIs
      • GET APIs
    • 3rd Party Payments Integrations
    • Embedding Village Dashboards
  • πŸ•΅οΈLEGACY Knowledge Base
    • Admin Quickstart
    • Referrals Support
    • The Basics of Village in 15 Minutes
    • Programs & Rules
      • Triggers
        • Activities
        • Goals
      • Conditions
        • Segment Conditions
        • Time Conditions
        • Max Budget Conditions
        • Conditional Multipliers
    • Awards
      • Monetary (Cash) Awards
      • Non-Monetary Awards
        • Funding
          • In-depth use cases for funding pools
      • Badges & Statuses
      • Award Expiration
    • Segments
      • Segmentation Use Cases
    • Rule Evaluation Logic Deep-dive
    • The Village Dashboards
      • Admin Account Creation
      • User Access Management
      • Network Settings
      • User Dashboard
    • BigQuery
    • Managing Payment Integrations
    • Referrals (Connections)
      • Pre-populating Users' Unique Referral Codes In Signup Flows & Forms
  • No and Low Code Solutions
    • No and Low Code Solutions
      • No & Low Code Solutions
  • Feedback
    • Village Docs Feedback Form
    • Feature Requests
    • Talk to our Team
Powered by GitBook
On this page
  • Personal Access Token
  • OAuth 2.0 Authorization Flow
  • Permissions

Was this helpful?

  1. Data Connections

Asana

How to connect Asana to Village Labs

PreviousLinearNextMonday

Last updated 8 months ago

Was this helpful?

Personal Access Token

  1. Open Asana. Navigate to Settings (Top right) > Apps > View Developer Console (bottom of modal)

  2. In the 'Personal access tokens' section of , click Create new token.

  3. Name it Village Labs

  4. Save your token in a secure password sharing platform like LastPass or 1Password and share with the Village Labs team.

OAuth 2.0 Authorization Flow

Since Asana uses OAuth 2.0, the process for connecting to Asana involves a few additional steps compared to simple API key access.

  • Create an OAuth Application:

    • Go to Asana’s developer console at Asana Developer App Console.

    • Create a new OAuth application.

    • You will receive a client_id and client_secret that will be used in the OAuth flow.

  • Redirect URI:

    • As part of the OAuth process, you will need to specify a redirect URI where Asana will send the authorization code after the user approves access.

  • User Authorization:

    • Direct the user (admin) to the authorization URL generated with your client_id and redirect URI.

    • The user will be prompted to log in and approve the requested scopes (permissions) for your application. For your use case, you will likely request read permissions to tasks, projects, comments, and user information.

  • Access Token Exchange:

    • After the user approves access, Asana will redirect them to your specified URI with an authorization code.

    • Exchange this authorization code for an access token using your client_id and client_secret.

  • Store Access Token:

    • Store the access token securely. This token will allow your application to access the Asana API on behalf of the user.

  • Access Asana Data:

    • Use the access token to make API requests to Asana and retrieve data such as tasks, comments, user information, etc.

Permissions

Ensure that you request the appropriate scopes based on what data you need to access. For your use case, you might consider the following scopes:

  • default: Grants access to read and write all user data.

  • tasks:read: Grants read-only access to tasks.

  • projects:read: Grants read-only access to projects.

  • workspaces:read: Grants read-only access to workspaces.

Handling Tokens

  • Token Expiry and Refresh: OAuth tokens can expire, so you'll need to handle token refreshes using the refresh_token provided during the token exchange process.

πŸ”Œ
My Apps