Skip to content

Teamweek API in Go

License

Notifications You must be signed in to change notification settings

toggl/go-teamweek

Repository files navigation

go-teamweek

Go library for accessing the Toggl.Plan API

CI

Usage

import "github.com/toggl/go-teamweek"

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

client := teamweek.NewClient(nil)
accounts, err := client.ListAccounts()

Authentication

The go-teamweek 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 := teamweek.NewClient(t.Client())

// Get authenticated user's profile information
profile, err := client.GetUserProfile()

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