The page has been marked as outdated. This generally means that the page was written for either a previous version of the package or a previous version of the underlying API(s).
Getting data from a profile
Getting data has a lot of options. In the example below, we get data for profileId for the last month. The data returned is AnalyticsMetric.Visits
and AnalyticsMetric.Pageviews
grouped by AnalyticsDimension.Date
.
AnalyticsDataResponse data = analytics.GetData(
profileId,
DateTime.Now.AddDays(-31),
DateTime.Now,
AnalyticsMetric.Visits + AnalyticsMetric.Pageviews,
AnalyticsDimension.Date
);
You can also use the AnalyticsDataOptions
class. While the class has more properties for advanced use, the example below will do the same as above:
AnalyticsDataOptions options = new AnalyticsDataOptions {
StartDate = DateTime.Now.AddDays(-31),
EndDate = DateTime.Now,
Dimensions = AnalyticsDimension.Date,
Metrics = AnalyticsMetric.Visits + AnalyticsMetric.Pageviews
};
AnalyticsDataResponse data = analytics.GetData(profileId, options);
You can then iterate over the data as (dimensions are listed first, then metrics):
foreach (AnalyticsDataRow row in data.Rows) {
// Get the date (both calls give the same result)
string date1 = row.GetString(AnalyticsDimension.Date);
string date2 = row.GetString("ga:date");
int visits = row.GetInt32(AnalyticsMetric.Visits);
int pageviews = row.GetInt32(AnalyticsMetric.Pageviews);
// Almost as before, but cell is now an object rather than a string
foreach (AnalyticsDataCell cell in row.Cells) {
Console.Write(cell.Value.PadRight(32));
}
Console.WriteLine();
}