/// <summary> /// Returns the real time data for a view profile. /// </summary> /// <param name="profileId">The analytics view profile to query, in the form: ga:XXXXX.</param> /// <param name="metrics">A list of real time metrics. Not all dimensions and metrics can be queried together. See the GAMetrics object for details.</param> public GAResult GetRealtimeData(string profileId) { if (string.IsNullOrEmpty(profileId)) throw new ArgumentException("The profile id name cannot be null or empty"); var result = new GAResult(); try { var query = GAService.Data.Realtime.Get(profileId, GAMetrics.RealTimeActiveUsers); query.Dimensions = GADimensions.RealTimeCity; query.Fields = "columnHeaders,rows,totalResults,totalsForAllResults"; query.MaxResults = 10; var response = query.Execute(); result.RealtimeResults.SetValues(response); result.Success = true; } catch (Exception ex) { result.Success = false; result.ErrorMessage = ex.Message; } return result; }
public GAResult GetSessions(string profileId, string startDate, string endDate, string dimensions) { var result = new GAResult(); try { var query = GAService.Data.Ga.Get(profileId, startDate, endDate, "ga:sessions"); query.Dimensions = dimensions; query.Fields = "rows,totalResults,totalsForAllResults"; var response = query.Execute(); result.Results.SetValues(response); result.Success = true; } catch(Exception ex) { result.Success = false; result.ErrorMessage = ex.Message; } return result; }