tambet / go-asana

Golang library for accessing the Asana API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-asana

Build Status GoDoc Coverage Status

Go library for accessing the Asana API.

Note: go-asana is currently in development, so its API may have slightly breaking changes if we find better ways of doing things.

Usage

import "github.com/tambet/go-asana/asana"

Create a new Asana client instance, then use provided methods on the client to access the API. For example, to list all workspaces:

client := asana.NewClient(nil)
workspaces, err := client.ListWorkspaces()

Authentication

The go-asana library does not directly handle authentication. Instead, when creating a new client, pass an http.Client that can handle authentication for you. The easiest way to do this is using the goauth2 library, but you can always use any other library that provides an http.Client. If you have an OAuth2 access token, you can use it with the goauth2 using:

t := &oauth.Transport{
  Token: &oauth.Token{AccessToken: "... your access token ..."},
}

client := asana.NewClient(t.Client())

// List all projects for the authenticated user
projects, err := client.ListProjects(opt)

See the goauth2 docs for complete instructions on using that library.

About

Golang library for accessing the Asana API

License:MIT License


Languages

Language:Go 98.8%Language:Makefile 1.2%