(403)具有报告范围的权限不足

时间:2014-09-30 18:31:24

标签: google-admin-sdk

我很难过这个。我有一个示例PHP脚本,使用最新版本的Google API PHP客户端。这个脚本功能完美:

<?php

require_once 'Google/Client.php';
require_once 'Google/Service/Drive.php';

$apiConfig['use_objects'] = true;

$client = new Google_Client();
$client->setClientId('xxx.googleusercontent.com');
$client->setClientSecret('xxx');
$client->setRedirectUri('xxx');
$client->setScopes(array('https://www.googleapis.com/auth/drive'));
$oldToken = file_get_contents("token.json");
$client->setAccessToken($oldToken);

$service = new Google_Service_Drive($client);
$perms = $service->permissions->listPermissions("example_file_id_here");
print_r($perms);
?>

然而,对报告API做同样的事情却给了我这篇文章主题的错误。

$client->setScopes(array('https://www.googleapis.com/auth/admin.reports.usage.readonly'));

$service = new Google_Service_Reports($client);
$rep = $service->userUsageReport->get("test@test.com", "2014-09-03");
	print_r($rep);

我到处寻找能够找到我需要授予权限的内容。根据{{​​3}}。我没有在API列表中提供“Reports API”,但启用了Admin SDK。

有谁知道它还能是什么?它在API资源管理器和oauth 2游乐场中运行良好。

1 个答案:

答案 0 :(得分:3)

在文档中不是很清楚,但报告API实际上是Admin SDK的一部分。因此,通过启用Admin SDK,您实际上同时启用了报告Api和Admin Apis。

如果您转到admin SDK documentation并在“创建报告和审核”下单击,则可以看到它直接将您链接到Reports API。

希望这有帮助!