Implementar o suporte a drives compartilhados

Os drives compartilhados seguem diferentes modelos de organização, compartilhamento e propriedade do Meu Drive. Se o app for criar e gerenciar arquivos em drives compartilhados, será necessário implementar o suporte a drives compartilhados. A complexidade da implementação depende da funcionalidade do app.

Para começar, é necessário incluir o parâmetro de consulta supportsAllDrives=true nas solicitações quando o app realizar as operações listadas abaixo:

API Drive v3

  • files.get
  • files.list
  • files.create
  • files.update
  • files.copy
  • files.delete
  • changes.list
  • changes.getStartPageToken
  • permissions.list
  • permissions.get
  • permissions.create
  • permissions.update
  • permissions.delete

API Drive v2

  • files.get
  • files.list
  • files.insert
  • files.update
  • files.patch
  • files.copy
  • files.trash
  • files.untrash
  • files.delete
  • files.touch
  • children.insert
  • parents.insert
  • changes.list
  • changes.getStartPageToken
  • changes.get
  • permissions.list
  • permissions.get
  • permissions.insert
  • permissions.update
  • permissions.patch
  • permissions.delete

O parâmetro supportsAllDrives=true informa ao Google Drive que seu aplicativo foi projetado para processar arquivos em drives compartilhados.

Os aplicativos que leem ou modificam permissões, rastreiam mudanças ou precisam pesquisar em vários corpora exigem mais funcionalidades do drive compartilhado. O restante deste documento destaca outras mudanças necessárias para executar essas tarefas.

Pesquisar conteúdo em um drive compartilhado

Use o método files.list para pesquisar unidades compartilhadas. Esta seção aborda os campos específicos do drive compartilhado no método files.list. Para pesquisar um drive compartilhado, consulte Pesquisar arquivos e pastas.

O método files.list contém os seguintes campos e modos de consulta específicos do drive compartilhado:

  • driveId: o ID do drive compartilhado a ser pesquisado.
  • includeItemsFromAllDrives: se os itens do drive compartilhado precisam ser incluídos nos resultados. Se não estiverem presentes ou forem definidos como falsos, os itens do drive compartilhado não serão retornados.

  • corpora: corpos de itens (arquivos/documentos) aos quais a consulta se aplica. Os corpos compatíveis são user, domain, drive e allDrives. Para otimizar a eficiência, dê preferência a user ou drive em vez de allDrives.

  • supportsAllDrives: se o aplicativo solicitante oferece suporte ao Meu Drive e aos drives compartilhados. Se for falso, os itens do drive compartilhado não serão incluídos na resposta.

Os modos de consulta a seguir são específicos para drives compartilhados:

includeItemsFromAllDrives corpora Descrição da consulta
true user Consulta arquivos que o usuário acessou, incluindo arquivos do drive compartilhado e do Meu Drive.
true drive Consulta todos os itens no drive compartilhado especificado. O driveId precisa ser especificado na solicitação.
true allDrives Consulta arquivos que o usuário acessou e todos os drives compartilhados em que ele é participante. A resposta pode incluir incompleteSearch : true, indicando que alguns corpora não foram pesquisados para essa solicitação.
true domain Consulta arquivos compartilhados com o domínio, incluindo arquivos do drive compartilhado e do Meu Drive.

Rastrear alterações em um drive compartilhado

Use o método changes.list para acompanhar as mudanças em um drive compartilhado. Esta seção aborda os campos específicos do drive compartilhado no método changes.list. Veja mais informações em Controlar alterações de usuários e drives compartilhados. O método changes.list contém os seguintes modos de consulta e campos específicos do drive compartilhados:

  • driveId: o drive compartilhado de onde as alterações são retornadas. Se especificado, os IDs de mudança se referem a mudanças no drive compartilhado, não a mudanças nos arquivos mostrados ao usuário. Para se referir a uma alteração específica do drive compartilhado, o ID do drive compartilhado e o ID da mudança precisam ser usados como um identificador.
  • supportsAllDrives: define se o aplicativo solicitante oferece suporte a drives compartilhados. Se for falso, os itens do drive compartilhado, incluindo drives compartilhados e arquivos em um drive compartilhado, não serão retornados.
  • includeItemsFromAllDrives: se os arquivos ou as mudanças do drive compartilhado precisam ser incluídas na lista de mudanças.

Os modos de consulta a seguir são específicos para drives compartilhados:

includeItemsFromAllDrives driveId Descrição da consulta
true Não As mudanças são refletidas em arquivos dentro ou fora dos drives compartilhados que o usuário acessou, bem como em drives compartilhados em que o usuário é participante.
true Sim As mudanças são refletidas no drive compartilhado especificado e nos itens dentro dele.

Para mais detalhes sobre o comportamento do registro de alterações, consulte Registros de alterações.

Ativar o suporte ao drive compartilhado na interface do Drive

Para acessar o conteúdo do drive compartilhado usando a interface do Drive, verifique se você marcou a opção "Suporte a drives compartilhados" no Console da API Google. Saiba mais em Configurar uma integração com a interface do Drive.

Usar o seletor de arquivos com drives compartilhados

O seletor de arquivos permite selecionar itens em drives compartilhados. Para saber como ativar o suporte aos drives compartilhados e adicionar a visualização no seletor de arquivos, consulte API Google Picker.

Próximas etapas

Continue em Gerenciar drives compartilhados para saber como criar e gerenciar as permissões de drives compartilhados.