Intereting Posts
Каков наилучший вариант использования языкового коммутатора в моей системе ZF2? Сортировка массива PHP с использованием внутреннего val Как получить миниатюру из базы данных wordpress на внешнюю страницу (SOLVED) Электронная почта для xampp: ошибка синтаксического анализа: синтаксическая ошибка, неожиданный '@' Gmail игнорирует мои письма в формате HTML Доступ к функциям Codeigniter из внешнего скрипта cURL-скрипт не будет загружать изображения; Вместо этого появляется мусор Как включить страницу с функцией $ _GET & htaccess? PHP: использование пробелов в индексах ассоциативного массива Doctrine – как получить запрос SQL INSERT в событии postSave ()? Управление JOINs по неизвестному числу атрибутов EAV Добавление виджета на страницу «Информация о клиенте» Переменная контроллера не отображается в Query Builder Laravel Как преобразовать строку «HH: MM: SS» в секундах с помощью PHP? Если CURLOPT_SSL_VERIFYPEER является ложным, передача данных больше не защищена?

«Недостаточно разрешений» учетная запись службы API Google Analytics

Я пытаюсь получить данные с помощью API Google Analytics через учетные записи служб.

Я искал в stackoverflow, как это сделать, и использовал тот же самый код, который был найден на нескольких сообщениях, но получал проблемы, чтобы заставить его работать.

Источники:

Службы приложений и API Google Analytics V3: Аутентификация OAuth2 от сервера к серверу?

Службы приложений и API Google Analytics V3: ошибка 101 (сеть :: ERR_CONNECTION_RESET)

http://code.google.com/p/google-api-php-client/source/browse/trunk/examples/prediction/serviceAccount.php

Это то, что я получил:

require_once('googleAPIGoogle_Client.php'); require_once('googleAPI/contrib/Google_AnalyticsService.php'); const CLIENT_ID = 'xxxxxxxx001.apps.googleusercontent.com'; const SERVICE_ACCOUNT_NAME = 'xxxxxx001@developer.gserviceaccount.com'; $keyfile = $_SERVER['DOCUMENT_ROOT']."/xxxxxxx284-privatekey.p12"; $client = new Google_Client(); $client->setAccessType('offline'); $client->setApplicationName("cc insights"); $key = file_get_contents($keyfile); $client->setClientId(CLIENT_ID); $client->setAssertionCredentials(new Google_AssertionCredentials( SERVICE_ACCOUNT_NAME, array('https://www.googleapis.com/auth/analytics.readonly'), $key) ); $service = new Google_AnalyticsService($client); $data = $service->data_ga->get("ga:xxxx7777", "2012-01-01", "2013-01-25", "ga:pageviews"); var_dump($data); 

при выполнении я получил следующую ошибку:

Неустранимая ошибка: исключить исключение «Google_ServiceException» с сообщением «Ошибка вызова GET https://www.googleapis.com/analytics/v3/data/ga?ids=ga%3Axxxx7777&start-date=2012-01-01&end-date=2013- 01-25 & metrics = ga% 3Apageviews : (403) У пользователя нет достаточных разрешений для этого профиля. ' в /Applications/XAMPP/xamppfiles/htdocs/insights/application/libraries/googleAPI/io/Google_REST.php:66 Трассировка стека: # 0 / Приложения / XAMPP / xamppfiles / htdocs / insights / application / libraries / googleAPI / io / Google_REST .php (36): Google_REST :: decodeHttpResponse (объект (Google_HttpRequest)) # 1 /Applications/XAMPP/xamppfiles/htdocs/insights/application/libraries/googleAPI/service/Google_ServiceResource.php(178): Google_REST :: выполнить (объект (Google_HttpRequest)) # 2 /Applications/XAMPP/xamppfiles/htdocs/insights/application/libraries/googleAPI/contrib/Google_AnalyticsService.php(383): Google_ServiceResource -> __ call ('get', Array) # 3 / Applications / XAMPP / xamppfiles / htdocs / insights / application / libraries / Google.php (46): Google_DataGaServiceResource-> get ('g в /Applications/XAMPP/xamppfiles/htdocs/insights/application/libraries/googleAPI/io/Google_REST.php в строке 66

Поскольку я использую тот же код, что и рабочие примеры, я думаю, что это может быть проблема с настройками учетной записи API или службы?

Это пользователь, которого я добавил в аккаунт аналитики: Пользователи Google Analytics

и это учетные записи доступа api: доступ к api

Кто-нибудь знает, что я делаю неправильно?

Related of "«Недостаточно разрешений» учетная запись службы API Google Analytics"

Я получал точно такую ​​же ошибку, и это решило это для меня:

Я использовал идентификатор учетной записи вместо ID просмотра. Переключившись на View ID, он зафиксировал его – это всегда «View ID», а не идентификатор учетной записи или свойства (который выглядит как «UA-xxx»). Идентификатор View предназначен для определенного веб-ресурса и может быть найден в Admin-> View (3-й столбец) -> Настройки просмотра. Это целое число без дефиса.

https://stackoverflow.com/a/15789266/1391229

Если бы такая же проблема сегодня, то ее трудно найти, вы можете получить ее в каждом URL-адресе в аналитике, например https://www.google.com/analytics/web/#management/Settings/aXXXXXXWYYYYYYYPZZZZZZZ/, это часть ZZZZZZZ

Тот же вопрос. Решил его, используя идентификатор VIEW, а не идентификатор учетной записи (UA-XXXXX-1).

 Analytics Console > Admin -> View (Profile) -> View Settings -> View ID 

А ТАКЖЕ

Убедитесь, что вы добавили учетную запись службы в список пользователей в консоли Google Analytics. Просто настроить его в разделе Credentials, API и Permissions консоли разработчика все равно не даст ему доступ к вашей аналитике.

 Analytics Console > Admin -> Account -> User Management -> "Add permissions for:" 

Получил ту же ошибку, но через некоторое время я узнал, что я использую этот скрипт с моим Google Chrome (мой собственный адрес электронной почты), но API Google Analytics работает в электронной почте компаний. Таким образом, решение может заключаться в редактировании настроек вашего Chrome. Просто отключитесь от учетной записи gmail в Chrome (настройки) Google и проверьте ее снова.

Использовать идентификатор просмотра ID не идентификатор учетной записи, вкладку «Администратор», «Просмотреть настройки» «Идентификатор просмотра».

Помог мне много после 2 недель попытки найти решение:

Консоль Analytics -> Admin -> Просмотр (Профиль) -> Настройки просмотра -> Просмотр ID

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

У меня была та же проблема с использованием библиотеки .net, после некоторого вмешательства, я нашел решение:

Перейдите на сайт управления Google Analytics и добавьте учетную запись службы в качестве пользователя и предоставите эту учетную запись необходимым правам.

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

Если проблема … оказалось, что идентификатор учетной записи скрыт в URL-адресе вашей аналитической учетной записи!

https://developers.google.com/analytics/devguides/reporting/core/v3/#user_reports

URL-адрес обычно выглядит так:

https://www.google.com/analytics/web/?hl=ru#management/Settings/a51343283w84330433 p87396224 /%3Fm.page%3DAccountSettings/

Идентификатор, который мы ищем, следует букве p.

В приведенном выше примере идентификатор, который будет работать: 87396224

Создайте общий сегмент … Он будет работать

http://www.periscopix.co.uk/blog/google-analytics-new-feature-shared-segments/