private static FormUrlEncodedContent CreateRequest(AuthenticationApiRequest request) { var requestData = new Dictionary<string, string> { {"client_id", request.ClientId}, {"client_secret", request.ClientSecretKey}, {"grant_type", "authorization_code"}, {"code", request.AuthorizationCode} }; var content = new FormUrlEncodedContent(requestData); return content; }
public AuthenticationDetail GetAccessToken(AuthenticationApiRequest request) { using (var client = _httpClientFactory.Create(_baseUrl)) { client.BaseAddress = _baseUrl; client.DefaultRequestHeaders.Add("Api-Key", request.ApiKey); var requestContent = CreateRequest(request); var response = client.PostAsync("v7.0/oauth2/access_token/", requestContent).Result; if (response.IsSuccessStatusCode) { var responseData = response.Content.ReadAsAsync<dynamic>().Result; var authorizationData = Map(responseData); return authorizationData; } throw new HttpRequestException(string.Format("Http Status:{0}| Reason:{1}", response.StatusCode, response.ReasonPhrase)); } }