Я пытаюсь получить группы, с которыми связан пользователь, в Google GSuite for Education. Я начал следовать учебному пособию, чтобы перечислить всех пользователей, связанных с ассоциацией, но я получил: ошибка 400 - «message»: «Неверный ввод.
До сих пор я создал проект с учетной записью службы, потому что я необходимо, чтобы не было никакого взаимодействия с пользователем, поскольку выборка должна выполняться автоматически.После этого я установил учетную запись как включенную для делегирования всего домена G Suite и поместил ее в авторизованный клиент API с https://www.googleapis.com/auth/admin.directory.group.readonly* 1005. * и https://www.googleapis.com/auth/admin.directory.user.readonly доменов, но когда я запускаю код, я получаю ошибку выше
Вот код:
<?php
require_once './google-api/vendor/autoload.php';
putenv('GOOGLE_APPLICATION_CREDENTIALS='.__DIR__.'/Culturalia.json');
function getGoogleClient() {
return getServiceAccountClient();
}
function getServiceAccountClient() {
try {
// Create and configure a new client object.
$client = new Google_Client();
$client->useApplicationDefaultCredentials();
$client->addScope([Google_Service_Directory::ADMIN_DIRECTORY_USER_READONLY]);
return $client;
} catch (Exception $e) {
print "An error occurred: " . $e->getMessage();
}
}
$client = getGoogleClient();
$service = new Google_Service_Directory($client);
// Print the first 10 users in the domain.
$optParams = array(
'customer' => 'my_customer',
'maxResults' => 10,
'orderBy' => 'email',
);
$results = $service->users->listUsers($optParams);
if (count($results->getUsers()) == 0) {
print "No users found.\n";
} else {
print "Users:\n";
foreach ($results->getUsers() as $user) {
printf("%s (%s)\n", $user->getPrimaryEmail(),
$user->getName()->getFullName());
}
}
?>
Но я полагаю, что это, скорее всего, авторизация, которая Я где-то скучаю, любая помощь будет оценена.