asana-api

A nodejs client implementation for Asana API

asana-api

A Node.js client implementation for Asana API.

  var asana = require('asana-api');
 
  var client = asana.createClient({
    apiKey: 'your-secret-api-key'
  });
 
  client.users.list(function (errusers) {
    // 
    // List all users for this Asana account. 
    // 
    console.dir(users);
  });
  var asana = require('asana-api');
 
  var client = asana.createClient({
    token: 'your-oauth-token'
  });
 
  client.users.list(function (errusers) {
    // 
    // List all users for this Asana account. 
    // 
    console.dir(users);
  });

Or go even further and supply enough information for OAuth to refresh the access token

  var asana = require('asana-api');
 
  var client = asana.createClient({
    oauth: {
      accessToken : "your-oauth-token",
      refreshToken : "your-oauth-refresh-token",
      clientId : "your-client-id",
      clientSecret : "your-client-secret",
      redirectUrl : "your-redirect-url-to-store-new-token"
    }
  });
 
  client.users.list(function (errusers) {
    // 
    // List all users for this Asana account. 
    // 
    console.dir(users);
  });
  GET  /users
  GET  /users
  GET  /users/me
  GET  /users/:user-id
 
  GET  /workspaces
  GET  /workspaces/:workspace-id/tasks
  GET  /workspaces/:workspace-id/projects
  GET  /organizations/:workspace-id/teams
 
  POST /tasks
  GET  /tasks
  PUT  /tasks/:task-id
  GET  /tasks/:task-id
  DELETE /tasks/:task-id
  GET  /tasks/:task-id/stories
  POST /tasks/:task-id/stories
  POST /tasks/:task-id/addProject
 
  GET  /projects
  GET  /projects/:project-id/tasks
 
  POST /tags
  GET  /tags
  GET  /tags/:tag-id
  PUT  /tags/:tag-id
  GET  /tags/:tag-id/tasks
  GET  /tasks/:task-id/projects
  POST /tasks/:task-id/removeProject
 
  GET /projects/:project-id
  PUT /projects/:project-id
 
  GET /stories/:story-id
 
  PUT  /workspaces/:workspace-id
  POST /workspaces/:workspace-id/tasks
  GET  /workspaces/:workspace-id/users
  $ npm test

AUTHOR: Charlie Robbins