Общие диски используют другие модели организации, совместного доступа и владения, чем «Мой диск». Поэтому некоторые операции «Моего диска» не разрешены для контента на общем диске.
В этом руководстве описываются различия в 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
, а пользователь всё ещё является участником общего диска.
Для приложений, которым необходимо синхронизировать контент с общими дисками или отслеживать активность, могут потребоваться дополнительные изменения. Подробнее см. в разделе Отслеживание изменений для пользователей и общих дисков .