1// Copyright © 2016 Aaron Longwell 2// 3// Use of this source code is governed by an MIT licese. 4// Details in the LICENSE file. 5 6package trello 7 8import ( 9 "fmt" 10 "time" 11) 12 13// Token represents Trello tokens. Tokens can be used for setting up Webhooks among other things. 14// https://developers.trello.com/reference/#tokens 15type Token struct { 16 client *Client 17 ID string `json:"id"` 18 DateCreated time.Time `json:"dateCreated"` 19 DateExpires *time.Time `json:"dateExpires"` 20 IDMember string `json:"idMember"` 21 Identifier string `json:"identifier"` 22 Permissions []Permission `json:"permissions"` 23} 24 25// Permission represent a Token's permissions. 26type Permission struct { 27 IDModel string `json:"idModel"` 28 ModelType string `json:"modelType"` 29 Read bool `json:"read"` 30 Write bool `json:"write"` 31} 32 33// GetToken takes a token id and Arguments and GETs and returns the Token or an error. 34func (c *Client) GetToken(tokenID string, args Arguments) (token *Token, err error) { 35 path := fmt.Sprintf("tokens/%s", tokenID) 36 err = c.Get(path, args, &token) 37 if token != nil { 38 token.client = c 39 } 40 return 41} 42