Инструменты Google Analytics для веб-мастеров Недостаточно прав

У меня есть код для работы с аналитикой, так что он управляет запросом в Google Analytics и возвращает результаты, однако, когда я пытаюсь использовать код для запроса инструментов для веб-мастеров, он возвращается с недостаточными разрешениями.

Google Enabled API: API Analytics, API Google Search Console

Есть что-то, чего мне не хватает?

Код Google Analytics:

$client = new Google_Client();
$client->setAuthConfigFile($SECRET);
$client->addScope(Google_Service_Analytics::ANALYTICS_READONLY); //For analytics stuff
$client->setAccessType('offline');
$client->setPrompt('prompt');

if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
$client->setAccessToken($_SESSION['access_token']);

//Checking to see if the token is expired
if($client->isAccessTokenExpired()){
$client->refreshToken($refreshToken);
$_SESSION['access_token'] = $client->getAccessToken();
}

$results = $analytics->data_ga->get(
$viewID,
$fromDate,
$toDate,
$metrics,
$optParams);foreach($results->rows as $data){
echo "<pre>",print_r($data),"</pre>";
}
}else {
$redirect_uri = $redirectURL;
header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}

Код Инструментов для веб-мастеров:

$client = new Google_Client();
$client->setAuthConfigFile($SECRET);
$client->addScope(Google_Service_Webmasters::WEBMASTERS_READONLY); //For WebMaster Tools
$client->setAccessType('offline');
$client->setPrompt('prompt');if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
$client->setAccessToken($_SESSION['access_token']);

//Checking to see if the token is expired
if($client->isAccessTokenExpired()){
$client->refreshToken($refreshToken);
$_SESSION['access_token'] = $client->getAccessToken();
}
//Creating Webmaster Service
$webmastersService = new Google_Service_Webmasters($client);
$searchanalytics = $webmastersService->searchanalytics;

//Creating Request
$request = new Google_Service_Webmasters_SearchAnalyticsQueryRequest();
$request->setStartDate('2016-05-01');
$request->setEndDate('2016-05-31');
$request->setDimensions( array('query') );

$qsearch = $searchanalytics->query("http://www.example.co.uk", $request);
$rows = $qsearch->getRows();
echo "<pre>",print_r($rows),"</pre>";

} else {
$redirect_uri = $redirectURL;
header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}

Сообщение об ошибке для Инструментов для веб-мастеров:

{
"error": {
"errors": [
{
"domain": "global",
"reason": "insufficientPermissions",
"message": "Insufficient Permission"}
],
"code": 403,
"message": "Insufficient Permission"}
}

1

Решение

Когда вы запускаете первое, которое вы спрашиваете у пользователя, могу ли я получить доступ к вашим данным Google Analytics, пользователь говорит, что вы можете, и вы получаете токен доступа, который можно использовать для доступа к его данным Google Analytics.

Во втором вопросе вы спрашиваете пользователя, могу ли я получить доступ к данным ваших инструментов для веб-мастеров, пользователь говорит, что да, вы получаете токен доступа для доступа к данным его инструментов для веб-мастеров.

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

Если вы попытаетесь использовать аутентификацию из запроса на авторизацию аналитики для доступа к инструментам веб-мастера, вы получите Недостаточные разрешения.

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

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]