Установка роли fileOrganizer для общего / группового диска Google: сбой элемента для общего / группового диска - PullRequest
1 голос
/ 21 марта 2020

Попытка установить разрешение в качестве «fileOrganizer» для пользователя в общей папке на диске Google, но API v3 (и v2) выдает ошибку FileOrganizer role is only valid for shared drives, и я НЕ смог найти способ указать, что папка находится на общий диск.

Можно установить такое же разрешение через пользовательский интерфейс.

Код

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. Для общего диска в некоторых документах API требуется установить для параметра "SupportAllDrives" значение true, но Документ API указывает, что он устарел.
  2. В этом документе объясняются роли Specifi c для общих дисков, но нельзя упомянуть, что запрос permissions.create предназначен для общего диска.
  3. files.list API имеет возможность передать идентификатор диска, установив «corpora»: «диск», который указывает общий диск, но аналогичная опция недоступна для permissions.create.

Я пытался различные комбинации, такие как передача DriveId без удачи. Есть ли другие варианты?

1 Ответ

1 голос
/ 23 марта 2020

Роль fileOrganizer является допустимым выбором для всего общего диска, а не для одного файла на этом диске

Что вы можете сделать вместо этого:

  • Либо укажите используйте role fileOrganizer для всего диска (указав общий идентификатор диска в качестве идентификатора файла)
  • или предоставьте пользователю разрешение на указанный файл c, указав writer, reader, commenter или owner (для последнего случая указывается transferOwnership true) как role.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...