Implementa la compatibilidad con unidades compartidas

Las unidades compartidas siguen modelos de organización, uso compartido y propiedad diferentes de Mi unidad. Si tu app va a crear y administrar archivos en unidades compartidas, debes implementar la compatibilidad con unidades compartidas en tu app. La complejidad de tu implementación depende de la funcionalidad de tu app.

Para comenzar, debes incluir el parámetro de consulta supportsAllDrives=true en tus solicitudes cuando tu app realice las operaciones que se indican a continuación:

API de 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 de 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

El parámetro supportsAllDrives=true informa a Google Drive que tu aplicación está diseñada para controlar archivos en unidades compartidas.

Las aplicaciones que leen o modifican permisos, hacen un seguimiento de los cambios o necesitan buscar en varios corpus requieren una funcionalidad de unidad compartida adicional. En el resto de este documento, se destacan los cambios adicionales necesarios para realizar estas tareas.

Cómo buscar contenido en una unidad compartida

Usa el método files.list para buscar unidades compartidas. En esta sección, se describen los campos compartidos específicos de la unidad en el método files.list. Para buscar una unidad compartida, consulta Cómo buscar archivos y carpetas.

El método files.list contiene los siguientes campos y modos de consulta específicos de la unidad compartida:

  • driveId: Es el ID de la unidad compartida que se buscará.
  • includeItemsFromAllDrives: Indica si se deben incluir los elementos de la unidad compartida en los resultados. Si no están presentes o se configuran como falsas, no se mostrarán los elementos de la unidad compartida.

  • corpora: Cuerpos de elementos (archivos/documentos) al que se aplica la consulta. Los cuerpos admitidos son user, domain, drive y allDrives. Para mejorar la eficiencia, prefiere user o drive en lugar de allDrives.

  • supportsAllDrives: Indica si la aplicación solicitante admite Mi unidad y unidades compartidas. Si es falso, los elementos de la unidad compartida no se incluyen en la respuesta.

Los siguientes modos de consulta son específicos de las unidades compartidas:

includeItemsFromAllDrives corpora Descripción de la consulta
true user Consulta los archivos a los que accedió el usuario, incluidos los archivos de unidades compartidas y de Mi unidad.
true drive Consulta todos los elementos de la unidad compartida especificada. Se debe especificar driveId en la solicitud.
true allDrives Consulta archivos a los que accedió el usuario y todas las unidades compartidas de las que es miembro. Ten en cuenta que la respuesta puede incluir incompleteSearch : true, lo que indica que no se buscaron algunos corpus para esta solicitud.
true domain Consulta los archivos que se comparten con el dominio, incluidos los archivos de unidades compartidas y de Mi unidad.

Cómo hacer un seguimiento de los cambios en una unidad compartida

Usa el método changes.list para hacer un seguimiento de los cambios de una unidad compartida. En esta sección, se abordan los campos específicos de las unidades compartidas en el método changes.list. Para obtener más información, consulta Cómo hacer un seguimiento de los cambios de los usuarios y las unidades compartidas. El método changes.list contiene los siguientes campos y modos de consulta específicos de la unidad compartida:

  • driveId: Es la unidad compartida desde la que se muestran los cambios. Si se especifican, los IDs de cambio se refieren a los cambios dentro de la unidad compartida, no a los cambios en los archivos que se muestran al usuario. Para hacer referencia a un cambio específico de la unidad compartida, se deben usar como identificadores el ID de la unidad compartida y el ID del cambio.
  • supportsAllDrives: Indica si la aplicación solicitante admite unidades compartidas. Si es falso, no se muestran los elementos de la unidad compartida, incluidos los archivos y las unidades compartidas.
  • includeItemsFromAllDrives: Indica si los archivos o cambios de la unidad compartida se deben incluir en la lista de cambios.

Los siguientes modos de consulta son específicos de las unidades compartidas:

includeItemsFromAllDrives driveId Descripción de la consulta
true No Los cambios reflejan los cambios en los archivos dentro o fuera de las unidades compartidas a las que el usuario accedió, así como los cambios en las unidades compartidas de las que el usuario es miembro.
true Los cambios reflejan las modificaciones que se realizaron en la unidad compartida en particular y los elementos que contiene.

Para obtener detalles adicionales sobre el comportamiento del registro de cambios, consulta Registros de cambios.

Habilita la compatibilidad con unidades compartidas en la IU de Drive

Para acceder al contenido de las unidades compartidas con la IU de Drive, asegúrate de haber marcado la opción "Compatibilidad con unidades compartidas" en la consola de la API de Google. Para obtener más información, consulta Configura una integración de la IU de Drive.

Cómo usar el selector de archivos con unidades compartidas

El selector de archivos admite la selección de elementos en unidades compartidas. Para obtener detalles sobre cómo habilitar la compatibilidad con unidades compartidas y agregar la vista de unidades compartidas en el selector de archivos, consulta la API de Google Picker.

Próximos pasos

Continúa en Administrar unidades compartidas para obtener ayuda sobre cómo crear unidades compartidas y administrar sus permisos.