【问题标题】:Setting a role as fileOrganizer for shared/team google drive item failing for shared/team drive将角色设置为共享/团队 google 驱动器项目的 fileOrganizer 共享/团队驱动器失败
【发布时间】:2020-03-21 03:28:05
【问题描述】:

尝试为共享 google 驱动器文件夹上的用户设置权限为“fileOrganizer”,但 v3(和 v2)API 给出错误 FileOrganizer role is only valid for shared drives,我找不到指定文件夹位于共享云端硬盘。

可以通过 UI 设置相同的权限。

代码

gapi.client.drive.permissions
      .create({
        fileId: folderId,
        sendNotificationEmail: false,
        supportsAllDrives: true,
        role: 'fileOrganizer' // 'writer' works
        type: 'user',
        emailAddress
      }).then(

API 响应

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "fileOrganizerOnNonTeamDriveNotSupported",
    "message": "FileOrganizer role is only valid for shared drives."
   }
  ],
  "code": 403,
  "message": "FileOrganizer role is only valid for shared drives."
 }
}

注意事项

  1. 对于共享驱动器,some API documents 需要将“supportsAllDrives”参数设置为 true,但API document 表示它已弃用。
  2. document 这个document 解释了共享驱动器的特定角色,但没有办法提及permissions.create 请求是针对共享驱动器的。
  3. files.list API 可以选择通过设置 'corpora': 'drive' 来传递 driveId,这表示共享驱动器,但类似的选项不适用于 permissions.create

我尝试了各种组合,例如通过 driveId 没有任何运气。 还有其他选择吗?

【问题讨论】:

标签: google-drive-api google-drive-shared-drive


【解决方案1】:

角色fileOrganizer 仅适用于整个共享驱动器,而不是该驱动器上的单个文件

你可以做什么:

  • 为用户提供整个驱动器的 role fileOrganizer(将共享驱动器 ID 指定为文件 ID)
  • 或者给特定文件的用户权限,指定writerreadercommenterowner(对于后一种情况指定transferOwnershiptrue)为role

【讨论】:

  • 感谢您的回复,请注意,从 UI 可以将用户设置为特定文件夹的 fileOrganizer。那么根据你的回答,我可以说不支持通过 API 将用户设置为 fileOrganizer 吗?
  • 您可以通过使用选项Can organize, add & edit 与用户共享文件夹来进行测试。在下一步中,您可以列出(developers.google.com/drive/api/v3/reference/permissions/list)文件夹的权限,并确认分配的角色是writer,而不是fileOrganizer。不幸的是,文档和方法名称非常具有误导性。
  • 从 UI 如果我设置了 fileOrganizer,权限列表 API 会正确返回 fileOrganizer。在此文件夹上设置“所有者”角色也会产生错误Owner role is invalid for shared drive items.
  • 您确定您谈论的是共享驱动器内的folder,而不是Shared drives 下列出的drive?因为对于共享驱动器内的文件夹,共享选项被禁用,请参见此处:https://miro.medium.com/max/407/1*DJulsM54jW7A5IU7ll4pdw.pngsupport.google.com/a/thread/11036891?hl=en
  • 是的,检查我以前的 cmets,尝试在同一文件夹上设置“所有者”角色会出现错误 Owner role is invalid for shared drive items
猜你喜欢
  • 2019-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-14
  • 1970-01-01
  • 2017-02-05
  • 2022-07-01
  • 2013-02-23
相关资源
最近更新 更多