我按照这篇文章把一个用户变成gsuite的Admin。https:/developers.google.comadmin-sdkdirectoryv1referenceusersmakeAdmin。
我是用python来做的,我的代码是。
SCOPES = ['https://www.googleapis.com/auth/admin.directory.user', 'https://www.googleapis.com/auth/admin.directory.group', 'https://www.googleapis.com/auth/spreadsheets']
SERVICE_ACCOUNT_FILE = 'SA.json'
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE, scopes=SCOPES)
self.delegated_credentials = credentials.with_subject('[email protected]')
self.service = googleapiclient.discovery.build('admin', 'directory_v1', credentials=self.delegated_credentials)
self.service.users().makeAdmin(userKey="[email protected]").execute()
但不幸的是,我得到了这个错误。
> googleapiclient.errors.HttpError: <HttpError 400 when requesting
> https://www.googleapis.com/admin/directory/v1/users/[email protected]/makeAdmin?
> returned "Missing required field: is_admin">
如果我尝试用用户列表,
users = self.service.users().list(customer='my_customer').execute()
它就能正常工作。
参数是什么?is_admin
错误是指什么?我在文档中没有看到任何关于它的内容。
谅谅
的 使管理 方法也有一个body paramater,它取一个布尔值。
{
"status": boolean
}
我想这是你缺少的is_admin字段。
self.service.users().makeAdmin(userKey="[email protected]", { "status": True }).execute()