Este documento contém tarefas relacionadas ao gerenciamento de drives compartilhados, como a criação deles e o gerenciamento de participantes e permissões, usando a API Google Drive.
Se você quiser especificar os campos a serem retornados na resposta, defina o
fields parâmetro
do
sistemacom qualquer método do recurso drives. Se você não especificar o parâmetro fields, o servidor retornará um conjunto padrão de campos específicos do método. Por exemplo, o
list método retorna apenas os campos kind, id,
e name para cada drive compartilhado. Para mais informações, consulte Retornar
campos específicos.
Para saber mais sobre os limites de pastas de drives compartilhados, consulte Limites de pastas de drives compartilhados.
Pré-requisitos
Antes de criar e gerenciar drives compartilhados, verifique se você atende aos seguintes requisitos:
- Conta do Google Workspace:os drives compartilhados estão disponíveis nas edições compatíveis do Google Workspace (como Business Standard, Business Plus, Enterprise e Education). As Contas do Google pessoais (
@gmail.com) não podem criar drives compartilhados. - Permissão de criação:os administradores de domínio podem configurar se os usuários da organização podem criar drives compartilhados. O usuário autenticado precisa pertencer a uma unidade organizacional que tenha permissão para criar drives compartilhados.
- Escopo do OAuth 2.0:seu app precisa ser autorizado com o escopo
https://www.googleapis.com/auth/drive. - Papéis:quando um usuário cria um drive compartilhado, ele recebe automaticamente
o papel de
organizernesse drive. O gerenciamento das configurações do drive , a renomeação do drive, a adição ou remoção de participantes e a exclusão do drive compartilhado exigem o papel deorganizer. Para mais informações sobre papéis, consulte Papéis para drives compartilhados. - Acesso de administrador de domínio:os administradores de domínio podem gerenciar qualquer drive compartilhado na organização, independentemente da participação, transmitindo
useDomainAdminAccess=true. Para mais informações, consulte Gerenciar drives compartilhados como administradores de domínio.
Criar um drive compartilhado
Para criar um drive compartilhado, use o create
método no drives recurso com o
requestId parâmetro.
O parâmetro requestId identifica a tentativa lógica de criação idempotente de um drive compartilhado. Se a solicitação expirar ou retornar um erro de back-end indeterminado, a mesma solicitação poderá ser repetida e não criará duplicatas. O requestId e o corpo da solicitação precisam permanecer os mesmos.
O exemplo de código a seguir mostra como criar um drive compartilhado:
Java
Python
Node.js
PHP
.NET
As chamadas para o create método são
idempotentes.
Se o drive compartilhado foi criado com sucesso em uma solicitação anterior ou devido a uma nova tentativa, o método retorna uma instância do recurso drives. Às vezes, como após um período prolongado ou se o corpo da solicitação tiver mudado, um erro 409 poderá ser retornado indicando que o requestId precisa ser descartado.
Receber um drive compartilhado
Para receber metadados de um drive compartilhado, use o
get método no
drives recurso com o driveId parâmetro de caminho. Se você não souber o ID do drive, poderá
listar todos os drives compartilhados usando o método list.
O método get retorna um drive compartilhado como uma instância de um recurso drives.
Para emitir a solicitação como administrador de domínio, defina o parâmetro de consulta useDomainAdminAccess como true. Para mais informações, consulte Gerenciar drives compartilhados como
administradores de domínio.
Listar drives compartilhados
Para listar os drives compartilhados de um usuário, use o list
método no drives recurso. O método retorna uma lista de drives compartilhados.
Transmita os seguintes parâmetros de consulta para personalizar a paginação ou filtrar drives compartilhados:
pageSize: o número máximo de drives compartilhados a serem retornados por página.pageToken: um token de página, recebido de uma chamada de lista anterior. Forneça esse token para recuperar a página seguinte.q: string de consulta para pesquisar drives compartilhados. Para mais informações, consulte Pesquisar drives compartilhados.useDomainAdminAccess: defina comotruepara emitir a solicitação como administrador de domínio e retornar todos os drives compartilhados do domínio em que o solicitante é um administrador. Para mais informações, consulte Gerenciar drives compartilhados como administradores de domínio.
Atualizar um drive compartilhado
Para atualizar os metadados de um drive compartilhado, use o
update método no
drives recurso com o driveId parâmetro de caminho.
O método retorna um drive compartilhado como uma instância de um recurso drives.
Para emitir a solicitação como administrador de domínio, defina o parâmetro de consulta useDomainAdminAccess como true. Para mais informações, consulte Gerenciar drives compartilhados como
administradores de domínio.
Ocultar e reexibir um drive compartilhado
Para ocultar um drive compartilhado da visualização padrão, use o
hide método no
drives recurso com o driveId parâmetro.
Quando um drive compartilhado é oculto, o Drive marca o recurso de drive compartilhado como hidden=true. Os drives compartilhados ocultos não aparecem na interface do Drive nem na lista de arquivos retornados.
Para restaurar um drive compartilhado para a visualização padrão, use o
unhide método no
drives recurso com o driveId parâmetro.
Os dois métodos retornam um drive compartilhado como uma instância de um recurso drives.
Excluir um drive compartilhado
Para excluir permanentemente um drive compartilhado, use o
delete método no
drives recurso com o driveId parâmetro.
Antes de excluir um drive compartilhado, todo o conteúdo dele precisa ser movido para a lixeira ou excluído. O usuário também precisa ter role=organizer na pasta do drive compartilhado. Para mais informações, consulte Colocar arquivos e pastas na lixeira ou excluir.
Transmita os seguintes parâmetros de consulta:
useDomainAdminAccess: defina comotruepara emitir a solicitação como administrador de domínio. Para mais informações, consulte Gerenciar drives compartilhados como administradores de domínio.allowItemDeletion: defina comotruepara excluir itens no drive compartilhado. Só é compatível quandouseDomainAdminAccesstambém está definido comotrue.
Adicionar ou remover participantes de um drive compartilhado
Adicione ou remova participantes de um drive compartilhado usando o
permissions recurso.
Para adicionar um participante, crie a permissão no drive compartilhado. Os métodos de permissão também podem ser usados em arquivos individuais em um drive compartilhado para conceder privilégios extras aos participantes ou permitir que não participantes colaborem em itens específicos.
Para mais informações e exemplos de código, consulte Compartilhar arquivos, pastas e drives.
Gerenciar drives compartilhados como administradores de domínio
Aplique o useDomainAdminAccess parâmetro com os
drives e
permissions recursos para gerenciar drives
compartilhados em uma organização.
Os usuários que chamam esses métodos com useDomainAdminAccess=true precisam ter o
Drive and Docs privilégio
de administrador.
Os administradores podem pesquisar drives
compartilhados ou atualizar permissões para drives
compartilhados pertencentes à organização, independentemente da participação do administrador
em qualquer drive compartilhado.
Ao usar contas de serviço, talvez seja necessário representar um administrador autenticado usando a representação de conta de serviço. As contas de serviço não pertencem ao seu domínio do Google Workspace, diferentemente das contas de usuário. Se você compartilhar recursos do Google Workspace, como documentos ou eventos, com todo o domínio do Google Workspace, eles não serão compartilhados com contas de serviço. Para mais informações, consulte Visão geral das contas de serviço.
Recuperar um drive compartilhado que não tem um organizador
O exemplo de código a seguir mostra como recuperar drives compartilhados que não têm mais um organizador.
Java
Python
Node.js
PHP
.NET
Impedir que os usuários façam o download, imprimam ou copiem arquivos
Você pode limitar como os usuários podem fazer o download, imprimir e copiar arquivos em drives compartilhados.
Para determinar se o usuário pode mudar as restrições de download aplicadas pelo organizador
de um drive compartilhado, verifique o capabilities.canChangeDownloadRestriction campo booleano. Se capabilities.canChangeDownloadRestriction estiver definido como true, as restrições de download poderão ser aplicadas ao drive compartilhado. Para mais informações, consulte
Entender os recursos de arquivos.
O drives recurso contém uma coleção de
campos booleanos restrictions
usados para indicar se uma ação pode ser realizada em um drive compartilhado.
As restrições se aplicam a um drive compartilhado ou a itens dentro de um drive compartilhado.
As restrições podem ser definidas usando o drives.update método.
Para aplicar restrições de download a um drive compartilhado, um administrador de drive compartilhado pode definir
o restrictions.downloadRestriction campo do drives
recurso usando o
DownloadRestriction objeto.
Definir o campo booleano restrictedForReaders como true declara que o download e a cópia são restritos para leitores. Definir o campo booleano restrictedForWriters como true declara que o download e a cópia são restritos para escritores. Se o campo restrictedForWriters for true, o download e a cópia também serão restritos para leitores. Da mesma forma, definir restrictedForWriters como true e restrictedForReaders como false é equivalente a definir restrictedForWriters e restrictedForReaders como true.
Compatibilidade com versões anteriores
Com a introdução do objeto DownloadRestriction, a funcionalidade do campo booleano
restrictions.copyRequiresWriterPermission
foi atualizada.
Agora, definir restrictions.copyRequiresWriterPermission como true atualiza o
restrictedForReaders campo booleano do objeto DownloadRestriction para true para declarar que
o download e a cópia são restritos para leitores.
Definir o campo copyRequiresWriterPermission como false atualiza os campos restrictedForWriters e restrictedForReaders para false. Isso significa que as configurações de restrição de download ou cópia são removidas para todos os usuários.
Campos que controlam os recursos de download, impressão e cópia
A tabela a seguir lista os campos de recursos drives
que afetam a funcionalidade de download, impressão e cópia:
| Campo | Descrição | Versão |
|---|---|---|
capabilities.canCopy |
Se o usuário atual pode copiar arquivos em um drive compartilhado. | v2 e v3 |
capabilities.canDownload |
Se o usuário atual pode fazer o download de arquivos em um drive compartilhado. | v2 e v3 |
capabilities.canChangeCopyRequiresWriterPermissionRestriction |
Se o usuário atual pode mudar a restrição copyRequiresWriterPermission de um drive compartilhado. |
v2 e v3 |
capabilities.canResetDriveRestrictions |
Se o usuário atual pode redefinir as restrições do drive compartilhado para os padrões. | v2 e v3 |
capabilities.canChangeDownloadRestriction |
Se o usuário atual pode mudar a restrição de download de um drive compartilhado. | Somente v3 |
restrictions.copyRequiresWriterPermission |
Se as opções de copiar, imprimir ou fazer o download de arquivos em um drive compartilhado estão desativadas para leitores e comentadores. Quando true, ele define o campo com nome semelhante como true para qualquer arquivo dentro desse drive compartilhado. |
v2 e v3 |
restrictions.downloadRestriction |
As restrições de download aplicadas pelos administradores de drives compartilhados. | Somente v3 |
Limites de pastas
Os drives compartilhados têm limites de itens e profundidade de pastas. Além disso, o uso do armazenamento é gerenciado no armazenamento em pool da organização, em vez da cota de armazenamento pessoal do Meu Drive de um usuário individual. Para mais informações, consulte Limites do drive compartilhado no Google Drive.
Limite de itens
Um drive compartilhado pode conter no máximo 500.000, incluindo arquivos, pastas e atalhos.
Quando o limite é atingido, o drive compartilhado não pode mais aceitar itens. Para retomar o recebimento de arquivos, os usuários precisam excluir permanentemente itens do drive compartilhado. Os itens na lixeira contam para o limite, mas os itens excluídos permanentemente não. Para mais informações, consulte Colocar arquivos e pastas na lixeira ou excluir.
Limite de profundidade da pasta
Uma pasta em um drive compartilhado não pode conter mais de 100 níveis de pastas aninhadas. Isso significa que uma pasta filha não pode ser armazenada em uma pasta com mais de 99 níveis de profundidade. Essa limitação se aplica apenas a pastas filhas.
As tentativas de adicionar mais de 100 níveis de pastas retornam uma
teamDriveHierarchyTooDeep
resposta de código de status HTTP.
Temas relacionados
- Visão geral dos drives compartilhados
- Implementar suporte a drives compartilhados
- Limites de uso
- Limites de arquivos e pastas em arquivos
- Papéis e permissões