/// <summary> /// Refreshes the access token. /// </summary> /// <param name="accessToken">The access token.</param> /// <param name="refreshToken">The refresh token.</param> /// <returns>Tokens.</returns> public Tokens RefreshAccessToken(string accessToken, string refreshToken) { string plainJson; const string payload = @"{""refresh_token"": ""{RT}""}"; using (var client = new MyWebClient()) { client.Encoding = Encoding.UTF8; client.Headers.Add("Content-Type", "application/json"); plainJson = client.UploadString(Constants.LinkRefreshToken.Replace("{AT}", accessToken), payload.Replace("{RT}", refreshToken)); } JsonRefreshTokens.RootObject objRefToken = JsonConvert.DeserializeObject <JsonRefreshTokens.RootObject>(plainJson); return(new Tokens { AccessToken = objRefToken.access_token, ExpireTimestamp = objRefToken.expiration_date, RefreshToken = refreshToken }); }
/// <summary> /// Refreshes the access token /// </summary> /// <returns>Successful</returns> public bool RefreshAccessToken() { try { JsonRequestRefreshAccessToken payload = new JsonRequestRefreshAccessToken { refresh_token = RefreshToken }; string plainJson = Links.GetNewAccessToken.ExecuteRequest(UserConfig, payload: payload); JsonRefreshTokens.RootObject obj = JsonConvert.DeserializeObject <JsonRefreshTokens.RootObject>(plainJson); Token = obj.access_token; ExpirationDate = obj.expiration_date; TokenType = obj.token_type; } catch (Exception) { return(false); } return(true); }