/// <summary> /// Request to get heart rate in specific in a range time /// </summary> /// <param name="date"></param> /// <param name="dateRangePeriod"></param> /// <param name="userId"></param> /// <returns></returns> public async Task <HeartActivitiesTimeSeries> GetHeartRateTimeSeries(DateTime date, DateRangePeriod dateRangePeriod, string userId = null) { if (string.IsNullOrWhiteSpace(userId)) { userId = "-"; } string apiCall = String.Format("https://api.fitbit.com/1.1/user/{0}/activities/heart/date/{1}/{2}.json", userId, date.ToString("yyyy-MM-dd"), dateRangePeriod.GetStringValue()); HttpResponseMessage response = await HttpClient.GetAsync(apiCall); await HandleResponse(response); string responseBody = await response.Content.ReadAsStringAsync(); var seralizer = new JsonDotNetSerializer(); var fitbitResponse = seralizer.GetHeartActivitiesTimeSeries(responseBody); return(fitbitResponse); }