Diferencias entre las unidades compartidas y la API de My Drive

Las unidades compartidas siguen modelos de organización, uso compartido y propiedad diferentes de una unidad de Mi unidad. Por lo tanto, algunas operaciones de Mi unidad no se permiten para el contenido de una unidad compartida. En este documento, se describen las diferencias de API específicas para las unidades compartidas.

recurso Files

Los siguientes campos solo se propagan para los archivos ubicados en una unidad compartida:

  • hasAugmentedPermissions: Indica si a algún usuario se le otorga acceso a este archivo directamente.
  • capabilities/canAddFolderFromAnotherDrive: Indica si el usuario actual puede agregar una carpeta de otra unidad (distinta unidad compartida o Mi unidad) a esta carpeta.
  • capabilities/canDeleteChildren: Indica si el usuario actual puede borrar los elementos secundarios de esta carpeta.
  • capabilities/canMoveChildrenOutOfDrive: Indica si el usuario actual puede mover los elementos secundarios de esta carpeta fuera de la unidad compartida.
  • capabilities/canMoveChildrenWithinDrive: Indica si el usuario actual puede mover elementos secundarios de esta carpeta dentro de la unidad compartida.
  • capabilities/canMoveItemWithinDrive: Indica si el usuario actual puede mover este elemento de la unidad compartida dentro de ella.
  • capabilities/canReadDrive: Indica si el usuario actual tiene acceso de lectura a la unidad compartida a la que pertenece este archivo.
  • capabilities/canTrashChildren: Indica si el usuario actual puede enviar o no los elementos secundarios de esta carpeta.
  • driveId: Es el ID de la unidad compartida en la que se encuentra el archivo.
  • trashingUser: Indica si el archivo se envió explícitamente a la papelera, es decir, el usuario que lo envió a la papelera.
  • trashedTime: La hora a la que se envió el elemento a la papelera.

Los siguientes campos no se propagan para los archivos ubicados en una unidad compartida:

  • permissions: Debido al posible tamaño de las LCA de las unidades compartidas, los permisos no se muestran como parte de los archivos. Usa el método permissions.list, que admite la paginación, para enumerar los permisos de un archivo dentro de una unidad compartida o de la unidad compartida en sí.
  • owners, ownerNames y ownedByMe: Los archivos de una unidad compartida son propiedad de ella, no de usuarios individuales.
  • folderColorRgb: Las carpetas no se pueden colorear de manera individual.
  • shared: Se comparten todos los elementos de una unidad compartida.
  • writersCanShare: Por el momento, no es posible restringir el uso compartido por función en unidades compartidas.

Los siguientes campos solo se configuran cuando el usuario tiene permisos de acceso a archivos en un elemento:

  • sharedWithMeDate
  • sharingUser

Los siguientes campos requieren una consideración especial cuando los usas con unidades compartidas:

  • parents.isRoot: Este campo solo es verdadero para la carpeta raíz de Mi unidad; es falso para la carpeta de nivel superior de la unidad compartida.
  • parents: Un superior no aparece en la lista superior si el usuario que realiza la solicitud no es miembro de la unidad compartida y no tiene acceso a la superior. Además, a excepción de la carpeta de nivel superior, la lista de elementos superiores debe contener exactamente un elemento si el archivo se encuentra dentro de una unidad compartida.

  • capabilities/canRemoveChildren: Usa capabilities/canDeleteChildren o capabilities/canTrashChildren.

recurso Permissions

El campo permissionDetails solo se propaga para los archivos ubicados dentro de una unidad compartida. Este campo es una lista de permisos condensados que este archivo de unidad compartida hereda o que está activado. Es un campo de solo salida y solo está presente para los elementos de la unidad compartida. Además:

  • Se definieron dos roles nuevos de organizer y fileOrganizer.
  • permissions.list ahora admite paginación.

recurso Changes

Los siguientes campos nuevos están disponibles en el recurso Changes para una unidad compartida:

  • changeType: Es el tipo de cambio. Los valores posibles son file y drive.
  • driveId: Es el ID de la unidad compartida asociada con este cambio.
  • drive: Es el estado actualizado de la unidad compartida. Presenta si changeType es drive y el usuario todavía es miembro de la unidad compartida.

Es posible que se requieran cambios adicionales para las aplicaciones que necesitan sincronizar contenido con unidades compartidas o realizar un seguimiento de la actividad. Para obtener más información, consulta Realiza un seguimiento de los cambios de los usuarios y las unidades compartidas.