Implementa la compatibilidad con unidades compartidas

Las unidades compartidas siguen modelos diferentes de organización, uso compartido y propiedad que Mi unidad. Si tu app creará y administrará archivos en unidades compartidas, debes implementar la compatibilidad con unidades compartidas en ella. La complejidad de la implementación dependerá 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 siguientes operaciones:

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 funcionalidad adicional de la unidad compartida. 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 específicos de las unidades compartidas en el método files.list. Para buscar unidades compartidas, consulta Cómo buscar archivos y carpetas.

El método files.list contiene los siguientes campos y modos de consulta específicos de las unidades compartidas:

  • driveId: Es el ID de la unidad compartida en la que se realizará la búsqueda.
  • includeItemsFromAllDrives: Indica si se deben incluir los elementos de las unidades compartidas en los resultados. Si no está presente o se establece como falso, no se muestran los elementos de la unidad compartida.

  • corpora: Cuerpos de los elementos (archivos o documentos) a los que se aplica la búsqueda. Los cuerpos admitidos son user, domain, drive y allDrives. Prefiere user o drive en lugar de allDrives para ahorrar energía.

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

Los siguientes modos de búsqueda 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 los 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 en una unidad compartida. En esta sección, se describen 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 para los usuarios y las unidades compartidas. El método changes.list contiene los siguientes campos y modos de consulta específicos de las unidades compartidas:

  • driveId: Es la unidad compartida desde la que se devuelven los cambios. Si se especifica, los IDs de cambio hacen referencia 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 en una unidad compartida, se deben usar el ID de la unidad compartida y el ID del cambio como identificadores.
  • supportsAllDrives: Indica si la aplicación solicitante admite unidades compartidas. Si es falso, no se devuelven los elementos de la unidad compartida, incluidas las unidades compartidas y los archivos dentro de una unidad compartida.
  • includeItemsFromAllDrives: Indica si los archivos o los cambios de la unidad compartida se deben incluir en la lista de cambios.

Los siguientes modos de búsqueda son específicos de las unidades compartidas:

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

Para obtener más detalles 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 APIs de Google. Para obtener más información, consulta Cómo configurar una integración de la IU de Drive.

Cómo usar el selector de archivos con unidades compartidas

El selector de archivos permite seleccionar 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 a Administrar unidades compartidas para obtener ayuda sobre cómo crear unidades compartidas y administrar sus permisos.