Google Apis .Net — получение данных аналитики

Я пытаюсь использовать Google.Apis.Analytics.v3 (1.7.0.81-бета), чтобы получить некоторые базовые аналитические данные. Я много искал примеров и помощи, но большинство из них, похоже, устарели.

Это было у меня прямо сейчас:

var serviceAccountEmail = "[email protected]";

var certificate = new X509Certificate2(@"PATH-TO-MY-PRIVATE-KEY", "notasecret", X509KeyStorageFlags.Exportable);

var credential = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer(serviceAccountEmail)
{
    Scopes = new[] { AnalyticsService.Scope.Analytics }
}.FromCertificate(certificate));

// Create the service.
var gas = new AnalyticsService(new BaseClientService.Initializer()
{
    HttpClientInitializer = credential,
    ApplicationName = "Tester",
});

var r = gas.Data.Ga.Get("ga:XXXXX", "2013-01-01", "2014-02-31", "ga:visitors");

//Specify some addition query parameters
r.Dimensions = "ga:pagePath";
r.Sort = "-ga:visitors";
r.MaxResults = 5;

//Execute and fetch the results of our query
GaData d = r.Execute();

Это дает мне:

Google.Apis.Requests.RequestError
Access Not Configured. Please use Google Developers Console to activate the API for your project. [403]
Errors [
    Message[Access Not Configured. Please use Google Developers Console to activate the API for your project.] Location[ - ] Reason[accessNotConfigured] Domain[usageLimits]
]

В консоли API Google я уже настроил учетную запись службы Oauth2 и добавил электронное письмо из нее в свою учетную запись аналитики на странице, с которой я пытаюсь извлечь данные. Так что не уверен, что я пропустил? или если я на самом деле просто делаю это неправильно?

Обновить

После включения Analytics Api теперь я получаю:

Google.Apis.Requests.RequestError User does not have sufficient permissions for this profile. [403] 
    Errors [ 
        Message[User does not have sufficient permissions for this profile.] 
        Location[ - ] 
        Reason[insufficientPermissions] 
        Domain[global] 
    ]

person Christian Bekker    schedule 07.02.2014    source источник


Ответы (2)


Добавьте адрес электронной почты учетной записи службы в учетную запись Google Analytics, к которой вы пытаетесь получить доступ с разрешениями «Чтение и анализ».

См. шаги по полной настройке доступа для служебной учетной записи в ответах здесь:

Подключение к Google Analytics API в приложении Rails< /а>

Я знаю, что там написано «Rails», просто взгляните на шаги по настройке учетной записи службы.

person jk.    schedule 07.02.2014
comment
Я уже сделал это, поэтому я все еще думаю, что это может быть мой код? - person Christian Bekker; 11.02.2014

Включили ли вы Analytics API, как показано на изображении ниже?

введите здесь описание изображения

person Madhur Ahuja    schedule 07.02.2014
comment
Я на самом деле забыл об этом (фейспалм), но теперь я получаю: Google.Apis.Requests.RequestError User does not have sufficient permissions for this profile. [403] Errors [ Message[User does not have sufficient permissions for this profile.] Location[ - ] Reason[insufficientPermissions] Domain[global] ] - person Christian Bekker; 07.02.2014