Ошибка 403 при попытке подключения к GA Reporting API v4 через R-скрипт

Рейтинг: 0Ответов: 1Опубликовано: 24.08.2023

Я пытаюсь получить доступ к Google Analytics Reporting API v4 через R-скрипт в Power BI по инструкции из данной статьи https://netpeak.net/ru/blog/kak-zagruzit-dannyye-iz-api-google-analytics-v-r-chast-2/

Но при пошаговом выполнении этапов из инструкции на определенном моменте я сталкиваюсь с ошибкой, которая не дает возможности получить данные.

Я пытаюсь получить доступ к данным с помощью сервисного аккаунта созданного в Google Cloud Console специально для этого доступа. Также для этого аккаунта был выдан доступ к аккаунту Google Analytics 4.

В Google Cloud Console включены все необходимые API сервисы Google Analytics (Google Analytics Reporting API/Google Analytics API/Google Analytics Data API/Google Analytics Admin API).

В RStudio я выполняю следующий скрипт: googleAnalyticsR::ga_auth(json_file = "D:/ga_auth/service.json") - авторизуюсь с помощью созданного сервисного аккаунта.

Результат: ℹ Authenticating using my-service-account@my-service-account.my.serviceaccount.com

Авторизация проходит без ошибок. Далее с помощью запроса:

accounts <- googleAnalyticsR::ga_account_list(type = c("ga4"))

я могу получить список всех аккаунтов GA4. Запрос также отрабатывает без ошибок.

Далее с помощью запроса

meta <- googleAnalyticsR::ga_meta() - я могу получить таблицу метрик и параметров, с описанием.

Но как только я пытаюсь запросить данные из GA4 аккаунта с помощью следующего запроса:

googleAnalyticsR::google_analytics(12345678, date_range = c("2023-07-21","2023-07-31"), metrics = c("sessions"), dimensions = c("date"))

То всегда получаю одну и ту же ошибку. Результат: ℹ 2023-08-18 13:11:40 > Request Status Code: 403 Error: http_403 User does not have sufficient permissions for this profile.

Ответы

▲ 0

Перерыл кучу источников по данной ошибке, на просторах их достаточно много, все они в основном крутятся вокруг тезиса, что у сервисного аккаунта нет достаточных требований для того, чтобы получить доступ к данным аккаунта GA4. Возможно так и есть в некоторых случаях, но конкретно мне помогло просто внимательное чтение документации по пакету googleAnalyticsR (вот ссылка на него https://code.markedmondson.me/googleAnalyticsR/articles/reporting-ga4.html)

Дело оказалось в том, что в инструкции скрипт написан немного по другому:

googleAnalyticsR::google_analytics(12345678...

В соответствии с документацией, скрипт должен выглядеть следующим образом:

googleAnalyticsR::ga_data(12345678...