【发布时间】:2021-10-02 18:36:48
【问题描述】:
我正在尝试在 Python 脚本中使用 Google Directory API 自动创建 Google 帐户。但是当我运行我的脚本时,我收到以下错误:
Traceback (most recent call last):
File "./create_user.py", line 34, in <module>
main()
File "./create_user.py", line 31, in main
directory.create_user(userInfo)
File "/home/romain/dev/ezdrive/access-auto/google_wrapper/directory.py", line 27, in create_user
self.service.users().insert(body=json.dumps(userInfo)).execute()
File "/home/romain/dev/ezdrive/access-auto/env/lib/python3.8/site-packages/googleapiclient/_helpers.py", line 134, in positional_wrapper
return wrapped(*args, **kwargs)
File "/home/romain/dev/ezdrive/access-auto/env/lib/python3.8/site-packages/googleapiclient/http.py", line 943, in execute
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 400 when requesting https://admin.googleapis.com/admin/directory/v1/users?alt=json returned "Invalid Input: primary_user_email". Details: "[{'message': 'Invalid Input: primary_user_email', 'domain': 'global', 'reason': 'invalid'}]">
这是创建帐户的代码:
def main():
userInfo = {
"name": {
"givenName": "Romain",
"familyName": "Test DEV 1"
},
"kind": "user",
"primaryEmail": "romain.test1@mydomain.net",
"isDelegatedAdmin": False,
"suspended": False,
"isAdmin": False,
"agreedToTerms": True,
"password": "Password456",
"changePasswordAtNextLogin": True
}
directory.create_user(userInfo)
class Directory:
def __init__(self):
self.get_service()
def get_service(self):
creds = oauth_login()
self.service = build('admin', 'directory_v1', credentials=creds)
def create_user(self, userInfo):
self.service.users().insert(body=json.dumps(userInfo)).execute()
我检查了主电子邮件使用的域名是否正确,所以我不太明白出了什么问题。
提前感谢您的帮助!
【问题讨论】:
标签: python google-api google-identity