Настроить авторизацию через OAuth2 для PHP скрипта
Есть скрипт, который авторизуется через OAuth2 и отправляет запросы в Google Analytics с использованием класса Google_Service_Analytics
Работу приложения можно посмотреть здесь https://www.kl82.com/node/add/report-ga-connector
Нужно точно так же отправлять запрос с использованием класса AnalyticsAdminServiceClient. Это класс из современной библиотеки Google Analytics Data API https://developers.google.com/analytics/devguides/reporting/data/v1?hl=en
Работающий фрагмент старого кода
$analytics = new Google_Service_Analytics($client)
$accounts = $analytics->management_accountSummaries->listManagementAccountSummaries()
Не работающий фрагмент кода:
$analytics = new AnalyticsAdminServiceClient([
credentials => GoogleApiCoreCredentialsWrapper::build( [
scopes => [
https://www.googleapis.com/auth/analytics,
openid,
https://www.googleapis.com/auth/analytics.readonly,
],
keyFile => [
type => authorized_user,
grant_type => authorized_user,
client_id => $client->getClientId(),
client_secret => $client->getClientSecret(),
refresh_token => $client->getRefreshToken(),
access_token => $client->getAccessToken()["access_token"]
],
] ),
] )
$accounts = $analytics->listAccounts()
Возвращает ошибку GuzzleHttpExceptionClientException: Client error: `POST https://oauth2.googleapis.com/token` resulted in a `400 Bad Request` response: { "error": "unsupported_grant_type", "error_description": "Invalid grant_type: " } in GuzzleHttpExceptionRequestException::create()
15.10.2024 20:23