En este documento, se incluyen tareas relacionadas con la administración de unidades compartidas, como la creación de unidades compartidas y la administración de miembros y permisos, mediante la API de Google Drive.
Si deseas especificar los campos que se mostrarán en la respuesta, puedes configurar el
fields parámetro
del sistema
con cualquier método del recurso drives. Si no especificas el parámetro fields, el servidor muestra un conjunto predeterminado de campos específicos del método. Por ejemplo, el
list método solo muestra los kind, id,
y name campos para cada unidad compartida. Para obtener más información, consulta Cómo mostrar
campos específicos.
Para obtener más información sobre los límites de carpetas de unidades compartidas, consulta Límites de carpetas de unidades compartidas.
Requisitos previos
Antes de crear y administrar unidades compartidas, asegúrate de cumplir con los siguientes requisitos:
- Cuenta de Google Workspace: Las unidades compartidas están disponibles con las ediciones compatibles de Google Workspace (como Business Standard, Business Plus, Enterprise y Education). Las cuentas personales de Google (
@gmail.com) no pueden crear unidades compartidas. - Permiso de creación: Los administradores de dominios pueden configurar si los usuarios de su organización pueden crear unidades compartidas. El usuario autenticado debe pertenecer a una unidad organizativa que tenga permiso para crear unidades compartidas.
- Alcance de OAuth 2.0: Tu app debe estar autorizada con el alcance
https://www.googleapis.com/auth/drive. - Funciones: Cuando un usuario crea una unidad compartida, se le asigna automáticamente la función
organizeren esa unidad compartida. Para administrar la configuración de Drive, cambiar el nombre de la unidad, agregar o quitar miembros y borrar la unidad compartida, se requiere la funciónorganizer. Para obtener más información sobre las funciones, consulta Funciones para unidades compartidas. - Acceso de administrador de dominio: Los administradores de dominios pueden administrar cualquier unidad compartida dentro de su organización, independientemente de la membresía, pasando
useDomainAdminAccess=true. Para obtener más información, consulta Administra unidades compartidas como administradores de dominio.
Cómo crear una unidad compartida
Para crear una unidad compartida, usa el create
método en el recurso drives con el parámetro
requestId.
El parámetro requestId identifica el intento lógico para la creación idempotente de una unidad compartida. Si se agota el tiempo de espera de la solicitud o se muestra un error de backend indeterminado, se puede repetir la misma solicitud y no se crearán duplicados. El requestId y el cuerpo de la solicitud deben seguir siendo los mismos.
En el siguiente ejemplo de código, se muestra cómo crear una unidad compartida:
Java
Python
Node.js
PHP
.NET
Las llamadas al create método son
idempotentes.
Si la unidad compartida se creó correctamente en una solicitud anterior o debido a un reintento, el método muestra una instancia del recurso drives. En ocasiones, como después de un tiempo prolongado o si cambió el cuerpo de la solicitud, es posible que se muestre un error 409 que indique que se debe descartar el requestId.
Cómo obtener una unidad compartida
Para obtener metadatos de una unidad compartida, usa el
get método en el
drives recurso con el driveId parámetro de ruta de acceso. Si no conoces el ID de la unidad, puedes
enumerar todas las unidades compartidas con el método list.
El método get muestra una unidad compartida como una instancia de un recurso drives.
Para emitir la solicitud como administrador de dominio, establece el parámetro de consulta useDomainAdminAccess en true. Para obtener más información, consulta Administra unidades compartidas como
administradores de dominio.
Cómo enumerar unidades compartidas
Para enumerar las unidades compartidas de un usuario, usa el list
método en el drives recurso. El método muestra una lista de unidades compartidas.
Pasa los siguientes parámetros de consulta para personalizar la paginación o filtrar las unidades compartidas:
pageSize: Es la cantidad máxima de unidades compartidas que se mostrarán por página.pageToken: Es un token de página que se recibe de una llamada de lista anterior. Proporciónalo para recuperar la página siguiente.q: Es una cadena de consulta para buscar unidades compartidas. Para obtener más información, consulta Cómo buscar unidades compartidas.useDomainAdminAccess: Se establece entruepara emitir la solicitud como administrador de dominio y mostrar todas las unidades compartidas del dominio en el que el solicitante es administrador. Para obtener más información, consulta Administra unidades compartidas como administradores de dominio.
Cómo actualizar una unidad compartida
Para actualizar los metadatos de una unidad compartida, usa el
update método en el
drives recurso con el driveId parámetro de ruta de acceso.
El método muestra una unidad compartida como una instancia de un recurso drives.
Para emitir la solicitud como administrador de dominio, establece el parámetro de consulta useDomainAdminAccess en true. Para obtener más información, consulta Administra unidades compartidas como
administradores de dominio.
Cómo ocultar y mostrar una unidad compartida
Para ocultar una unidad compartida de la vista predeterminada, usa el
hide método en el
drives recurso con el driveId parámetro.
Cuando se oculta una unidad compartida, Drive marca el recurso de unidad compartida como hidden=true. Las unidades compartidas ocultas no aparecen en la IU de Drive ni en la lista de archivos que se muestran.
Para restablecer una unidad compartida a la vista predeterminada, usa el
unhide método en el
drives recurso con el driveId parámetro.
Ambos métodos muestran una unidad compartida como una instancia de un recurso drives.
Cómo borrar una unidad compartida
Para borrar una unidad compartida de forma permanente, usa el
delete método en el
drives recurso con el driveId parámetro.
Antes de borrar una unidad compartida, todo el contenido de la unidad compartida debe moverse a la papelera o borrarse. El usuario también debe tener role=organizer en la carpeta de la unidad compartida. Para obtener más información, consulta Cómo mover archivos y carpetas a la papelera o borrarlos.
Pasa los siguientes parámetros de consulta:
useDomainAdminAccess: Se establece entruepara emitir la solicitud como administrador de dominio. Para obtener más información, consulta Administra unidades compartidas como administradores de dominio.allowItemDeletion: Se establece entruepara borrar elementos dentro de la unidad compartida. Solo se admite cuandouseDomainAdminAccesstambién se establece entrue.
Cómo agregar o quitar miembros de unidades compartidas
Agrega o quita miembros de unidades compartidas con el
permissions recurso.
Para agregar un miembro, crea el permiso en la unidad compartida. Los métodos de permisos también se pueden usar en archivos individuales dentro de una unidad compartida para otorgar privilegios adicionales a los miembros o permitir que los usuarios que no son miembros colaboren en elementos específicos.
Para obtener más información y código de muestra, consulta Cómo compartir archivos, carpetas y unidades.
Cómo administrar unidades compartidas como administradores de dominio
Aplica el parámetro useDomainAdminAccess con los
drives y
permissions recursos para administrar unidades
compartidas en una organización.
Los usuarios que llamen a estos métodos con useDomainAdminAccess=true deben tener el
Drive and Docs privilegio
de administrador.
Los administradores pueden buscar unidades
compartidas o actualizar permisos para unidades
compartidas que pertenecen a su organización, independientemente de la membresía del administrador
en cualquier unidad compartida determinada.
Cuando usas cuentas de servicio, es posible que debas suplantar la identidad de un administrador autenticado con la suplantación de identidad de la cuenta de servicio. Ten en cuenta que las cuentas de servicio no pertenecen a tu dominio de Google Workspace, a diferencia de las cuentas de usuario. Si compartes elementos de Google Workspace, como documentos o eventos, con todo tu dominio de Google Workspace, no se compartirán con las cuentas de servicio. Para obtener más información, consulta Descripción general de cuentas de servicio.
Cómo recuperar una unidad compartida que no tiene un organizador
En el siguiente ejemplo de código, se muestra cómo recuperar unidades compartidas que ya no tienen un organizador.
Java
Python
Node.js
PHP
.NET
Cómo impedir que los usuarios descarguen, impriman o copien archivos
Puedes limitar la forma en que los usuarios pueden descargar, imprimir y copiar archivos dentro de las unidades compartidas.
Para determinar si el usuario puede cambiar las restricciones de descarga aplicadas por el organizador
de una unidad compartida, verifica el capabilities.canChangeDownloadRestriction campo booleano. Si capabilities.canChangeDownloadRestriction se establece en true, se pueden aplicar restricciones de descarga a la unidad compartida. Para obtener más información, consulta
Comprende las capacidades de los archivos.
El recurso drives contiene una colección de
campos booleanos restrictions
que se usan para indicar si se puede realizar una acción en una unidad compartida.
Las restricciones se aplican a una unidad compartida o a los elementos que se encuentran dentro de ella.
Las restricciones se pueden establecer con el drives.update método.
Para aplicar restricciones de descarga a una unidad compartida, un administrador de unidades compartidas puede establecer
el restrictions.downloadRestriction campo del drives
recurso con el
DownloadRestriction objeto.
Si se establece el campo booleano restrictedForReaders en true, se declara que la descarga y la copia están restringidas para los lectores. Si se establece el campo booleano restrictedForWriters en true, se declara que la descarga y la copia están restringidas para los escritores. Ten en cuenta que, si el campo restrictedForWriters es true, la descarga y la copia también están restringidas para los lectores. Del mismo modo, establecer restrictedForWriters en true y restrictedForReaders en false equivale a establecer restrictedForWriters y restrictedForReaders en true.
Retrocompatibilidad
Con la introducción del objeto DownloadRestriction, se actualizó la funcionalidad del campo booleano
restrictions.copyRequiresWriterPermission.
Ahora, si se establece restrictions.copyRequiresWriterPermission en true, se actualiza el
restrictedForReaders campo booleano del DownloadRestriction objeto a true para declarar que
la descarga y la copia están restringidas para los lectores.
Si se establece el campo copyRequiresWriterPermission en false, se actualizan los campos restrictedForWriters y restrictedForReaders a false. Esto significa que se quitan los parámetros de configuración de restricción de descarga o copia para todos los usuarios.
Campos que controlan las funciones de descarga, impresión y copia
En la siguiente tabla, se enumeran los campos de recursos drives
que afectan la funcionalidad de descarga, impresión y copia:
| Campo | Descripción | Versión |
|---|---|---|
capabilities.canCopy |
Indica si el usuario actual puede copiar archivos en una unidad compartida. | v2 y v3 |
capabilities.canDownload |
Indica si el usuario actual puede descargar archivos en una unidad compartida. | v2 y v3 |
capabilities.canChangeCopyRequiresWriterPermissionRestriction |
Indica si el usuario actual puede cambiar la restricción copyRequiresWriterPermission de una unidad compartida. |
v2 y v3 |
capabilities.canResetDriveRestrictions |
Indica si el usuario actual puede restablecer las restricciones de la unidad compartida a los valores predeterminados. | v2 y v3 |
capabilities.canChangeDownloadRestriction |
Indica si el usuario actual puede cambiar la restricción de descarga de una unidad compartida. | Solo v3 |
restrictions.copyRequiresWriterPermission |
Indica si las opciones para copiar, imprimir o descargar archivos dentro de una unidad compartida están inhabilitadas para los lectores y comentaristas. Cuando es true, establece el campo con un nombre similar en true para cualquier archivo dentro de esta unidad compartida. |
v2 y v3 |
restrictions.downloadRestriction |
Son las restricciones de descarga que aplican los administradores de unidades compartidas. | Solo v3 |
Límites de carpetas
Las unidades compartidas tienen límites de elementos y de profundidad de carpetas. Además, el uso de almacenamiento se administra en función del almacenamiento agrupado de la organización en lugar de la cuota de almacenamiento personal de Mi unidad de un usuario individual. Para obtener más información, consulta Límites de unidades compartidas en Google Drive.
Límite de elementos
Una unidad compartida puede contener un máximo de 500,000 elementos, incluidos archivos, carpetas y accesos directos.
Cuando se alcanza el límite, la unidad compartida ya no puede aceptar elementos. Para reanudar la recepción de archivos, los usuarios deben borrar elementos de la unidad compartida de forma permanente. Ten en cuenta que los elementos de la papelera cuentan para el límite, pero los elementos borrados de forma permanente no. Para obtener más información, consulta Cómo mover archivos y carpetas a la papelera o borrarlos.
Límite de profundidad de carpetas
Una carpeta de una unidad compartida no puede contener más de 100 niveles de carpetas anidadas. Esto significa que no se puede almacenar una carpeta secundaria en una carpeta que tenga más de 99 niveles de profundidad. Esta limitación solo se aplica a las carpetas secundarias.
Los intentos de agregar más de 100 niveles de carpetas muestran una
teamDriveHierarchyTooDeep
respuesta de código de estado HTTP.
Temas relacionados
- Descripción general de las unidades compartidas
- Implementa la compatibilidad con unidades compartidas
- Límites de uso
- Límites de archivos y carpetas en archivos
- Funciones y permisos