github.com/crosbymichael/octokat@v0.0.0-20160826194511-076a32289ed5/access_token.go (about)

     1  package octokat
     2  
     3  type AccessToken struct {
     4  	Token     string `json:"access_token,omitempty"`
     5  	TokenType string `json:"token_type,omitempty"`
     6  }
     7  
     8  type AccessTokenParams struct {
     9  	ClientID     string `json:"client_id,omitempty"`
    10  	ClientSecret string `json:"client_secret,omitempty"`
    11  	Code         string `json:"code,omitempty"`
    12  	RedirectURI  string `json:"redirect_uri,omitempty"`
    13  }
    14  
    15  func CreateAccessToken(options *Options) (accessToken *AccessToken, err error) {
    16  	client := NewClient()
    17  	client.BaseURL = GitHubURL
    18  
    19  	if options == nil {
    20  		options = &Options{}
    21  	}
    22  
    23  	if options.Headers == nil {
    24  		options.Headers = Headers{}
    25  	}
    26  
    27  	options.Headers["Accept"] = "application/json"
    28  	err = client.jsonPost("login/oauth/access_token", options, &accessToken)
    29  	return
    30  }