Я пытаюсь получить данные с помощью API Google Analytics через учетные записи служб.
Я искал в stackoverflow, как это сделать, и использовал тот же самый код, который был найден на нескольких сообщениях, но получал проблемы, чтобы заставить его работать.
Источники:
Службы приложений и API Google Analytics V3: Аутентификация OAuth2 от сервера к серверу
Службы приложений и API Google Analytics V3: Ошибка 101 (net:: ERR_CONNECTION_RESET)
Вот что я получил:
require_once('googleAPIGoogle_Client.php');
require_once('googleAPI/contrib/Google_AnalyticsService.php');
const CLIENT_ID = 'xxxxxxxx001.apps.googleusercontent.com';
const SERVICE_ACCOUNT_NAME = '[email protected]';
$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 или службы?
Это пользователь, которого я добавил в учетную запись analytics:
и это учетные записи доступа api:
Кто-нибудь знает, что я делаю неправильно?