Общие диски используют другие модели организации, совместного доступа и владения, чем «Мой диск». Поэтому некоторые операции «Моего диска» не разрешены для контента на общем диске.
В этом руководстве описываются различия в files и ресурсах API, характерные для общих дисков, и changes ресурсы.
Файловый ресурс
Следующие поля в ресурсе files заполняются только для файлов, расположенных на общем диске:
-
hasAugmentedPermissions: Предоставляется ли пользователям прямой доступ к этому файлу. -
capabilities/canAddFolderFromAnotherDrive: может ли текущий пользователь добавлять папку с другого диска (другого общего диска или «Моего диска») в эту папку. -
capabilities/canDeleteChildren: Может ли текущий пользователь удалять дочерние элементы этой папки. -
capabilities/canMoveChildrenOutOfDrive: Может ли текущий пользователь перемещать дочерние элементы этой папки за пределы общего диска. -
capabilities/canMoveChildrenWithinDrive: Может ли текущий пользователь перемещать дочерние элементы этой папки на общем диске. -
capabilities/canMoveItemWithinDrive: может ли текущий пользователь перемещать этот элемент общего диска внутри общего диска. -
capabilities/canReadDrive: Имеет ли текущий пользователь право на чтение к общему диску, к которому принадлежит этот файл. -
capabilities/canTrashChildren: Может ли текущий пользователь удалять дочерние элементы этой папки. -
driveId: идентификатор общего диска, на котором расположен файл. -
trashingUser: Если файл был явно удален, укажите пользователя, который его удалил. -
trashedTime: время удаления элемента. Если вы используете старую версию Drive API v2, это поле называетсяtrashedDate.
Следующие поля не заполняются для файлов, расположенных на общем диске:
-
permissions: Из-за потенциального размера списков управления доступом (ACL) к общим дискам разрешения не возвращаются как часть файлов. Используйте методpermissions.list, поддерживающий разбиение на страницы, чтобы вывести список разрешений для файла на общем диске или в папке общего диска. -
owners,ownerNames,ownedByMe: файлы на общем диске принадлежат общему диску, а не отдельным пользователям. -
folderColorRgb: Папки нельзя раскрашивать по отдельности. -
shared: все элементы на общем диске являются общими. -
writersCanShare: На общих дисках невозможно ограничить общий доступ по ролям.
Следующие поля задаются только в том случае, если пользователю предоставлены разрешения на доступ к файлу для элемента:
-
sharedWithMeDate -
sharingUser
Следующие поля требуют особого внимания при использовании их с общими дисками:
-
parents.isRoot: это поле имеет значение true только для корневой папки «Мой диск»; для папки верхнего уровня общего диска оно имеет значение false. parents: родительский элемент не отображается в списке родителей, если запрашивающий пользователь не является участником общего диска и не имеет к нему доступа. Кроме того, за исключением папки верхнего уровня, родительский элемент должен содержать ровно один элемент, если файл находится на общем диске.capabilities/canRemoveChildren: Используйтеcapabilities/canDeleteChildrenилиcapabilities/canTrashChildren.
Изменить ресурс
В ресурсе changes для общего диска доступны следующие новые поля:
-
changeType: Тип изменения. Возможные значения:fileиdrive. -
driveId: идентификатор общего диска, связанного с этим изменением. -
drive: обновленное состояние общего диска. Присутствует, еслиchangeType—drive, а пользователь всё ещё является участником общего диска.
Для приложений, которым необходимо синхронизировать контент с общими дисками или отслеживать активность, могут потребоваться дополнительные изменения. Подробнее см. в разделе Отслеживание изменений для пользователей и общих дисков .