Skip to content
This repository has been archived by the owner on Oct 10, 2024. It is now read-only.

andrelung/asana-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Asana Bot --- WIP

This is a custom bot for Asana that subscribes to projects and performs specific actions on the tasks.

It is designed to be deployed in Netlify's Lambda functions. The button bellow will make your life easier but if you're keen to know more here's a getting starter guide. And if you want to start from scratch this blog post has a fantastic step-by-step guide.

Note: if deployed via Netlify, please re-deploy via the settings after adding your environment variables.

Deploy to Netlify

Bug, Feature Requests

You can request a new feature or submit a bug through this form :)

Functionality

New Task

  • if it has no assignee, the task is assigned to the owner of the project
  • if it has no due date, the task is assigned a default due date of 2 weeks from the creation date

Natural Language

The bot understand the following natural language if included in the task's name

Priority:

  • !!! = high
  • !! = medium
  • ! = low

Due Dates:

  • #today
  • #tomorrow
  • #week = a week from today
  • #month = a month from today

Task Completed

  • Marks a task as completed when moved to the Done board
  • Moves the task to the Done board when marked as completed

Configuration

You can use it with your own Asana account but I would recommend creating a separate one for the bot.

You will need to add the following Netlify's environment variables:

Note: if you have deployed the bot using the Netlify's button above and created this variables afterwards, you will need to trigger a new deployment as the variables are linked in the deployment phase.

How to get it working?

  1. Invite the Asana bot account to the project. He will need edit permissions
  2. Unfortunately Asana has no api method, subscription or webhook to get notified for those actions (invited/removed from a project) so the subscription can't be automatised. You will need to make use of the included /projects endpoint to manage such subscriptions (as per bellow)

Manage subscriptions

This bot contains an endpoint at https://XYZ.netlify.com/.netlify/functions/projects to manage its projects' subscriptions. Include the TOKEN in the header.

Retrieve projects subscribed (for a specific workspace)

Subscribe to a project

{
  project: ID
}

Un-subscribe from a project

You can retrieve the webhook id from the GET method.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published