public async Task <CryptoHistoricalData> GetHistoricalData(HistoricalDataTypes type, string symbol, string currencySymbol, int?limit, int?aggregate) { var parameters = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("fsym", symbol), new KeyValuePair <string, string>("tsym", currencySymbol) }; if (limit.HasValue) { parameters.Add(new KeyValuePair <string, string>("limit", limit.Value.ToString())); } if (aggregate.HasValue) { parameters.Add(new KeyValuePair <string, string>("aggregate", aggregate.Value.ToString())); } var subUrl = GetHistoricalSubUrl(type); var response = await GetResponse(_baseURL + subUrl, parameters); if (response.IsSuccessStatusCode) { var data = JsonConvert.DeserializeObject <CryptoHistoricalModel>(await response.Content.ReadAsStringAsync()); return(data.Data); } return(null); }
private string GetHistoricalSubUrl(HistoricalDataTypes type) { switch (type) { case HistoricalDataTypes.Daily: return(_dailyHistoricalDataSubUrl); case HistoricalDataTypes.Hourly: return(_hourlyHistoricalDataSubUrl); case HistoricalDataTypes.Minute: return(_minuteHistoricalDataSubUrl); default: return(_dailyHistoricalDataSubUrl); } }