public async Task <string> GetApprovedAccountToken(CreateAccountModel createAccount) { // gets short living access url var response = await CreateAccount(createAccount); // activate account, needs some time to activate await Task.Delay(3000); var tokenUrl = await ApproveAccount(response.ret.url); await Task.Delay(3000); // gets long living access token var tokenUri = new Uri(tokenUrl); var token = System.Web.HttpUtility.ParseQueryString(tokenUri.Fragment.Substring(1)).Get("access_token"); return(token); }
public async Task <CreateAccountResponse> CreateAccount(CreateAccountModel createAccount) { using var client = new HttpClient(); var json = JsonConvert.SerializeObject(createAccount); var data = new StringContent(json, Encoding.UTF8, "application/json"); client.DefaultRequestHeaders.Add("origin", "https://www.inlooxnow.com"); var response = await client.PostAsync("https://app.inlooxnow.com/AzureAccount/CreateAndGetLoginToken", data); if (response.IsSuccessStatusCode) { var text = await response.Content.ReadAsStringAsync(); return(JsonConvert.DeserializeObject <CreateAccountResponse>(text)); } return(null); }