Diferenças entre o drive compartilhado e a API My Drive

Os drives compartilhados seguem diferentes modelos de organização, compartilhamento e propriedade de um Meu Drive. Por isso, algumas operações do Meu Drive não são permitidas para o conteúdo em um drive compartilhado. Neste documento, descrevemos as diferenças da API específicas para drives compartilhados.

Files Recurso

Os seguintes campos só são preenchidos nos arquivos localizados em um drive compartilhado:

  • hasAugmentedPermissions: se algum usuário recebeu acesso diretamente nesse arquivo.
  • capabilities/canAddFolderFromAnotherDrive: se o usuário atual pode adicionar uma pasta de outro drive (ou seja, um drive compartilhado diferente ou "Meu Drive") a essa pasta.
  • capabilities/canDeleteChildren: se o usuário atual pode excluir filhos dessa pasta.
  • capabilities/canMoveChildrenOutOfDrive: se o usuário atual pode mover filhos dessa pasta para fora do drive compartilhado.
  • capabilities/canMoveChildrenWithinDrive: se o usuário atual pode mover filhos dessa pasta para o drive compartilhado.
  • capabilities/canMoveItemWithinDrive: se o usuário atual pode mover o item do drive compartilhado dentro dele.
  • capabilities/canReadDrive: se o usuário atual tem acesso de leitura ao drive compartilhado ao qual esse arquivo pertence.
  • capabilities/canTrashChildren: se o usuário atual pode enviar para a lixeira os filhos dessa pasta.
  • driveId: o ID do drive compartilhado em que o arquivo está localizado.
  • trashingUser: se o arquivo foi explicitamente movido para a lixeira, o usuário que o moveu para a lixeira.
  • trashedTime: a hora em que o item foi enviado para a lixeira.

Os seguintes campos não são preenchidos nos arquivos localizados em um drive compartilhado:

  • permissions: devido ao possível tamanho das ACLs dos drives compartilhados, as permissões não são retornadas como parte dos arquivos. Use o método permissions.list, que é compatível com paginação, para listar as permissões de um arquivo em um drive compartilhado ou no próprio drive compartilhado.
  • owners, ownerNames, ownedByMe: os arquivos em um drive compartilhado pertencem ao drive compartilhado, não aos usuários.
  • folderColorRgb: as pastas não podem ser coloridas individualmente.
  • shared: todos os itens em um drive compartilhado são compartilhados.
  • writersCanShare: no momento, não é possível restringir o compartilhamento por papel em drives compartilhados.

Os campos a seguir são definidos somente quando o usuário recebe permissões de acesso a arquivos em um item:

  • sharedWithMeDate
  • sharingUser

Os campos a seguir exigem uma consideração especial ao usá-los com drives compartilhados:

  • parents.isRoot: esse campo só é verdadeiro para a pasta raiz "Meu Drive" e é falso para a pasta de nível superior do drive compartilhado.
  • parents: um familiar responsável não vai aparecer na lista se o usuário solicitante não for participante do drive compartilhado e não tiver acesso ao pai. Além disso, com exceção da pasta de nível superior, a lista mãe precisa conter exatamente um item se o arquivo estiver em um drive compartilhado.

  • capabilities/canRemoveChildren: use capabilities/canDeleteChildren ou capabilities/canTrashChildren.

Permissions Recurso

O campo permissionDetails é preenchido apenas para arquivos localizados em um drive compartilhado. Esse campo mostra uma lista condensada de permissões ativadas ou herdadas por esse arquivo de drive compartilhado. Esse campo é somente de saída e está presente apenas nos itens dos drives compartilhados. Além disso:

  • Foram definidos dois novos papéis de organizer e fileOrganizer.
  • permissions.list agora é compatível com paginação.

Changes Recurso

Os novos campos a seguir estão disponíveis no recurso Changes de um drive compartilhado:

  • changeType: o tipo da mudança. Os valores possíveis são file e drive.
  • driveId: o ID do drive compartilhado associado a essa alteração.
  • drive: o estado atualizado do drive compartilhado. Presente se o changeType for drive e o usuário ainda for um participante do drive compartilhado.

Outras mudanças podem ser necessárias para aplicativos que precisam sincronizar conteúdo com drives compartilhados ou rastrear atividades. Para mais detalhes, consulte Rastrear alterações em usuários e drives compartilhados.