public async Task <GetAccessTokenFromSecretKeyResponse> GetAccessTokenFromSecretKey(string secretKey, string clientId) { var client = new HttpClient() { BaseAddress = new Uri(_authUri) }; client.DefaultRequestHeaders.Authorization = BasicAuthHeader.GetHeader(clientId, secretKey); var parameters = new Dictionary <string, string>() { { "grant_type", "client_credentials" }, { "scope", "api1" } }; var clientResponse = await client.PostAsync("connect/token", HttpClientHelpers.GetPostBody(parameters)); var response = await QuickResponse <GetAccessTokenFromSecretKeyResponse> .FromMessage(clientResponse); if (response.Data?.AccessToken == null) { throw new Exception($"Could not get access token. Error: {response.ResponseBody}"); } return(response.Data); }
public async Task <GetAccessTokenFromCodeResponse> GetAccessTokenFromCode(string code, string clientId, string redirectUri) { var client = new HttpClient() { BaseAddress = new Uri(_authUri) }; client.DefaultRequestHeaders.Authorization = BasicAuthHeader.GetHeader(clientId, _secretKey); var parameters = new Dictionary <string, string>() { { "grant_type", "authorization_code" }, { "code", code }, { "redirect_uri", redirectUri } }; var response = await client.Post <GetAccessTokenFromCodeResponse>("connect/token", parameters); return(response.Data); }
public async Task <GetAccessTokenFromSecretKeyResponse> GetAccessToken() { var client = new HttpClient { BaseAddress = new Uri(_authUri) }; client.DefaultRequestHeaders.Authorization = BasicAuthHeader.GetHeader(_consumerKey, _consumerSecret); var clientResponse = await client.GetAsync("/oauth/v1/generate?grant_type=client_credentials"); var response = await QuickResponse <GetAccessTokenFromSecretKeyResponse> .FromMessage(clientResponse); if (response.Data?.AccessToken == null) { throw new Exception($"Could not get access token. Error: {response.ResponseBody}"); } return(response.Data); }