asana
Asana - JavaScript client for asana
This is the interface for interacting with the Asana Platform
This SDK is automatically generated by the OpenAPI Generator project:
- API version: 1.0.0
- Package version: 0.0.1
- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen
For more information, please visit https://asana.com/support
Installation
npm
To publish the library as a npm, please follow the procedure in "Publishing npm packages".
Then install it via:
npm install asana --save
Finally, you need to build the module:
npm run build
Local development
To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json
(and this README). Let's call this JAVASCRIPT_CLIENT_DIR
. Then run:
npm install
Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR
:
npm link
To use the link you just defined in your project, switch to the directory you want to use your asana from, and run:
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>
Finally, you need to build the module:
npm run build
git
If the library is hosted at a git repository, e.g.https://github.com/GIT_USER_ID/GIT_REPO_ID
then install it via:
npm install GIT_USER_ID/GIT_REPO_ID --save
For browser
The library also works in the browser environment via npm and browserify. After following
the above steps with Node.js and installing browserify with npm install -g browserify
,
perform the following (assuming main.js is your entry file):
browserify main.js > bundle.js
Then include bundle.js in the HTML pages.
Webpack Configuration
Using Webpack you may encounter the following error: "Module not found: Error:
Cannot resolve module", most certainly you should disable AMD loader. Add/merge
the following section to your webpack config:
module: {
rules: [
{
parser: {
amd: false
}
}
]
}
Getting Started
Please follow the installation instruction and execute the following JS code:
var Asana = require('asana');
var defaultClient = Asana.ApiClient.instance;
var oauth2 = defaultClient.authentications['oauth2'];
oauth2.accessToken = "YOUR ACCESS TOKEN"
var personal_access_token = defaultClient.authentications['personal_access_token'];
personal_access_token.accessToken = "YOUR ACCESS TOKEN"
var api = new Asana.AttachmentApi()
var opts = {
'optFields': ["name","parent"],
'optPretty': true,
'resourceSubtype': "resourceSubtype_example",
'file': "/path/to/file",
'parent': "parent_example",
'url': "url_example",
'name': "name_example",
'connectToApp': true
};
var callback = function(error, data, response) {
if (error) {
console.error(error);
} else {
console.log('API called successfully. Returned data: ' + data);
}
};
api.uploadAttachment(opts, callback);
Documentation for API Endpoints
All URIs are relative to https://app.asana.com/api/1.0
Class | Method | HTTP request | Description |
---|
Asana.AttachmentApi | uploadAttachment | POST /attachments | Upload an attachment |
Documentation for Models
Documentation for Authorization
oauth2
- Type: OAuth
- Flow: accessCode
- Authorization URL: https://app.asana.com/-/oauth_authorize
- Scopes:
- default: Provides access to all endpoints documented in our API reference. If no scopes are requested, this scope is assumed by default.
- openid: Provides access to OpenID Connect ID tokens and the OpenID Connect user info endpoint.
- email: Provides access to the user’s email through the OpenID Connect user info endpoint.
- profile: Provides access to the user’s name and profile photo through the OpenID Connect user info endpoint.
personal_access_token
- Type: Bearer authentication