Google Play Developer API 创建用户总是返回错误代码 500

问题描述 投票:0回答:1

我正在尝试创建一些自动化功能,以使用 API 将用户添加到 Google Play 开发者帐户。我使用 google-api-python-client 库编写了一个 python 脚本。我用于请求的服务帐户具有管理员权限。 我已成功使用 users.list 端点获取用户列表,并使用 grants.create 端点授予应用程序对现有帐户的访问权限。但是调用 users.create 端点时,我总是收到错误代码 500(遇到内部错误),除非我省略了 User JSON 对象中的电子邮件地址,在这种情况下,我收到 400(需要电子邮件)。

userId = 'developers/' + DEVELOPER_ID + '/users/' + user["email"]
createUserRequestBody = {
    'name': userId,
    'email': user["email"]
}
createUserRequest = service.users().create(parent="developers/" + DEVELOPER_ID, body=createUserRequestBody)
createUserRequest.execute()

按照https://developers.google.com/android-publisher/api-ref/rest/v3/users#User的文档,我尝试仅发送请求正文中的电子邮件,以及发送所有未标记为“仅输出”的字段,并发送每个字段,包括标记为“仅输出”的字段。我还尝试直接使用 Rest API,而不是通过 python 库。我总是收到相同的代码 500。 我缺少什么?有人能够使用这个API成功创建用户吗?

编辑:打印整个响应对象只会让我得到这个:

google-api-python-client google-play-developer-api
1个回答
0
投票

事实证明,user.create 端点不接受空的developerAccountPermissions 列表。我尝试不发送参数、发送空列表以及发送 DEVELOPER_LEVEL_PERMISSION_UNSPECIFIED,因为我们不希望这些用户具有开发人员帐户访问权限,但所有这些都会导致返回代码 500。设置实际的开发者帐户权限可以解决该问题。

例如

createUserRequestBody = {'name': userId, 'email': user["email"], 'developerAccountPermissions': ["CAN_VIEW_FINANCIAL_DATA_GLOBAL"]}
© www.soinside.com 2019 - 2024. All rights reserved.