Google api 驱动v3 API文件方法给出了;无效参数";与corpora=domain一起使用时出错

Google api 驱动v3 API文件方法给出了;无效参数";与corpora=domain一起使用时出错,google-api,google-drive-api,Google Api,Google Drive Api,我需要通过服务器到服务器应用程序访问TeamDrive中组织的所有文件。所有有权访问这些文件的用户都有电子邮件username@organisation-域名 我创建了一个服务帐户,并将其与当前登录的用户一起列在谷歌控制台(组织->项目->IAM管理->IAM)中(username@organisation-域),具有管理员角色和对TeamDrive中文件的完全访问权限 通过此服务帐户,我请求“/drive/v3/files?corpora=domain”,返回: "domain": "gl

我需要通过服务器到服务器应用程序访问TeamDrive中组织的所有文件。所有有权访问这些文件的用户都有电子邮件username@organisation-域名

我创建了一个服务帐户,并将其与当前登录的用户一起列在谷歌控制台(组织->项目->IAM管理->IAM)中(username@organisation-域),具有管理员角色和对TeamDrive中文件的完全访问权限



通过此服务帐户,我请求“/drive/v3/files?corpora=domain”,返回:

"domain": "global",
"reason": "invalid",
"message": "Invalid Value",
"locationType": "parameter",
"location": "q"
虽然没有“q”参数

如果我删除“corpora=domain”部分,我将获得属于该服务帐户的所有文件

我尝试添加任何q参数只是为了尝试,例如“q=name+contains+'text'”。没有语料库,一切都正常-我得到了过滤后的文件(当然属于服务帐户)。如果我添加corpora=domain,我会得到关于无效参数的相同错误

我尝试了其他答案中的语料库=域、语料库=域等,没有结果。语料库=域和语料库=域给出相同的错误。corpora=DOMAIN和corpora=default给出“无效值”错误(无位置)

不管我怎么做,我总是会遇到这个奇怪的错误——q中的值无效,即使没有q参数

我也试过了

corpora: "teamDrive",
includeTeamDriveItems: true,
supportsTeamDrives: true,
teamDriveId: 'XXX',
服务帐户(通过电子邮件)name@id.iam.gserviceaccount.com)已添加到请求中TeamDrive ID的成员,但我得到:

"domain": "global",
"reason": "teamDriveMembershipRequired",
"message": "The attempted action requires Team Drive membership."
知道我做错了什么吗