Drive Service

Drive

Este servicio permite que las secuencias de comandos creen, busquen y modifiquen archivos y carpetas en Google Drive. Si bien el servicio de Drive integrado es más fácil de usar, tiene algunas limitaciones. Para acceder a las funciones y la asistencia más recientes, y para acceder a archivos o carpetas en unidades compartidas, usa el servicio avanzado de Drive.

Si tu secuencia de comandos usa un proyecto de Cloud estándar en lugar de un proyecto de Cloud predeterminado, debes activar la API de Drive de forma manual. En tu proyecto estándar de Cloud, activa la API de Drive:

Activa la API de Drive

En la siguiente muestra de código, se muestra cómo registrar los nombres de cada archivo en la carpeta Mi unidad del usuario:
// Logs the name of every file in the user's Drive.
var files = DriveApp.getFiles();
while (files.hasNext()) {
  var file = files.next();
  console.log(file.getName());
}

Clases

NombreDescripción breve
AccessEs una enumeración que representa las clases de usuarios que pueden acceder a un archivo o una carpeta, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
DriveAppPermite que las secuencias de comandos creen, encuentren y modifiquen archivos y carpetas en Google Drive.
FileUn archivo en Google Drive
FileIteratorEs un iterador que permite que las secuencias de comandos iteren en una colección de archivos potencialmente grande.
FolderEs una carpeta en Google Drive.
FolderIteratorEs un objeto que permite que las secuencias de comandos iteren en una colección de carpetas potencialmente grande.
PermissionEs una enumeración que representa los permisos otorgados a los usuarios que pueden acceder a un archivo o una carpeta, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
UserEs un usuario asociado a un archivo en Google Drive.

Access

Propiedades

PropiedadTipoDescripción
ANYONEEnumCualquier persona en Internet puede encontrarlo y acceder a él.
ANYONE_WITH_LINKEnumCualquier persona que tenga el vínculo puede acceder al elemento.
DOMAINEnumLas personas de tu dominio pueden encontrarlo y acceder a él.
DOMAIN_WITH_LINKEnumPueden acceder las personas de tu dominio que tengan el vínculo.
PRIVATEEnumSolo pueden acceder las personas a las que se les otorgó el permiso explícito.

DriveApp

Propiedades

PropiedadTipoDescripción
AccessAccessEs una enumeración que representa las clases de usuarios que pueden acceder a un archivo o una carpeta, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
PermissionPermissionEs una enumeración que representa los permisos otorgados a los usuarios que pueden acceder a un archivo o una carpeta, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.

Métodos

MétodoTipo de datos que se muestraDescripción breve
continueFileIterator(continuationToken)FileIteratorReanuda una iteración de archivos con un token de continuación de un iterador anterior.
continueFolderIterator(continuationToken)FolderIteratorReanuda la iteración de una carpeta con un token de continuación de un iterador anterior.
createFile(blob)FileCrea un archivo en la raíz de la unidad de Drive del usuario a partir de un Blob determinado de datos arbitrarios.
createFile(name, content)FileCrea un archivo de texto en la raíz de la unidad del usuario con el nombre y el contenido especificados.
createFile(name, content, mimeType)FileCrea un archivo en la raíz de la unidad del usuario con el nombre, el contenido y el tipo de MIME proporcionados.
createFolder(name)FolderCrea una carpeta en la raíz de la unidad de Drive del usuario con el nombre proporcionado.
createShortcut(targetId)FileCrea un acceso directo al ID del elemento de Drive proporcionado y lo devuelve.
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)FileCrea un acceso directo al ID del elemento de Drive y a la clave de recurso proporcionados, y lo devuelve.
enforceSingleParent(value)voidHabilita o inhabilita el comportamiento de enforceSingleParent para todas las llamadas que afectan a los elementos superiores.
getFileById(id)FileObtiene el archivo con el ID determinado.
getFileByIdAndResourceKey(id, resourceKey)FileObtiene el archivo con el ID y la clave de recurso determinados.
getFiles()FileIteratorObtiene una colección de todos los archivos en el Drive del usuario.
getFilesByName(name)FileIteratorObtiene una colección de todos los archivos de la unidad de Drive del usuario que tienen el nombre determinado.
getFilesByType(mimeType)FileIteratorObtiene una colección de todos los archivos de la unidad del usuario que tienen el tipo de MIME determinado.
getFolderById(id)FolderObtiene la carpeta con el ID determinado.
getFolderByIdAndResourceKey(id, resourceKey)FolderObtiene la carpeta con el ID y la clave de recurso determinados.
getFolders()FolderIteratorObtiene una colección de todas las carpetas en la unidad de Drive del usuario.
getFoldersByName(name)FolderIteratorObtiene una colección de todas las carpetas del Drive del usuario que tienen el nombre determinado.
getRootFolder()FolderObtiene la carpeta raíz de la unidad de Drive del usuario.
getStorageLimit()IntegerObtiene la cantidad de bytes que el usuario puede almacenar en Drive.
getStorageUsed()IntegerObtiene la cantidad de bytes que el usuario almacena actualmente en Drive.
getTrashedFiles()FileIteratorObtiene una colección de todos los archivos de la papelera del Drive del usuario.
getTrashedFolders()FolderIteratorObtiene una colección de todas las carpetas de la papelera de la unidad de Drive del usuario.
searchFiles(params)FileIteratorObtiene una colección de todos los archivos en la unidad del usuario que coinciden con los criterios de búsqueda proporcionados.
searchFolders(params)FolderIteratorObtiene una colección de todas las carpetas en la unidad del usuario que coinciden con los criterios de búsqueda proporcionados.

File

Métodos

MétodoTipo de datos que se muestraDescripción breve
addCommenter(emailAddress)FileAgrega el usuario determinado a la lista de comentaristas del File.
addCommenter(user)FileAgrega el usuario determinado a la lista de comentaristas del File.
addCommenters(emailAddresses)FileAgrega el array de usuarios proporcionado a la lista de comentaristas del File.
addEditor(emailAddress)FileAgrega el usuario especificado a la lista de editores del File.
addEditor(user)FileAgrega el usuario especificado a la lista de editores del File.
addEditors(emailAddresses)FileAgrega el array de usuarios proporcionado a la lista de editores del File.
addViewer(emailAddress)FileAgrega el usuario determinado a la lista de usuarios que pueden ver el File.
addViewer(user)FileAgrega el usuario determinado a la lista de usuarios que pueden ver el File.
addViewers(emailAddresses)FileAgrega el array de usuarios proporcionado a la lista de usuarios que pueden ver el File.
getAccess(email)PermissionObtiene el permiso otorgado a un usuario específico.
getAccess(user)PermissionObtiene el permiso otorgado a un usuario específico.
getAs(contentType)BlobDevuelve los datos dentro de este objeto como un blob convertido al tipo de contenido especificado.
getBlob()BlobDevuelve los datos dentro de este objeto como un blob.
getDateCreated()DateObtiene la fecha en que se creó el objeto File.
getDescription()StringObtiene la descripción del File.
getDownloadUrl()StringObtiene la URL que se puede usar para descargar el archivo.
getEditors()User[]Obtiene la lista de editores de este File.
getId()StringObtiene el ID del File.
getLastUpdated()DateObtiene la fecha en que se actualizó por última vez el objeto File.
getMimeType()StringObtiene el tipo de MIME del archivo.
getName()StringObtiene el nombre del File.
getOwner()UserObtiene el propietario del archivo.
getParents()FolderIteratorObtiene una colección de carpetas que son superiores inmediatas del File.
getResourceKey()StringObtiene la clave de recurso del File que se requiere para acceder a los elementos que se compartieron con un vínculo.
getSecurityUpdateEligible()BooleanObtiene si este File es apto para aplicar la actualización de seguridad que requiere una clave de recurso para acceder cuando se comparte con un vínculo.
getSecurityUpdateEnabled()BooleanIndica si este File requiere una clave de recurso para acceder a él cuando se comparte a través de un vínculo.
getSharingAccess()AccessObtiene la clase de usuarios que pueden acceder al File, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
getSharingPermission()PermissionObtiene el permiso otorgado a los usuarios que pueden acceder a File, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
getSize()IntegerObtiene la cantidad de bytes que se usan para almacenar el objeto File en Drive.
getTargetId()StringSi se trata de un acceso directo, devuelve el ID del elemento al que apunta.
getTargetMimeType()StringSi se trata de un acceso directo, devuelve el tipo de MIME del elemento al que apunta.
getTargetResourceKey()StringSi el archivo es un acceso directo, devuelve la clave de recurso del elemento al que apunta.
getThumbnail()Blob|nullObtiene una imagen en miniatura del archivo o null si no existe ninguna miniatura.
getUrl()StringObtiene la URL que se puede usar para abrir el objeto File en una app de Google, como Drive o Documentos.
getViewers()User[]Obtiene la lista de lectores y comentaristas de este File.
isShareableByEditors()BooleanDetermina si los usuarios con permisos de edición para el File pueden compartirlo con otros usuarios o cambiar los permisos.
isStarred()BooleanDetermina si el File se marcó como destacado en el Drive del usuario.
isTrashed()BooleanDetermina si el elemento File está en la papelera de la unidad del usuario.
makeCopy()FileCrea una copia del archivo.
makeCopy(destination)FileCrea una copia del archivo en el directorio de destino.
makeCopy(name)FileCrea una copia del archivo y le asigna el nombre proporcionado.
makeCopy(name, destination)FileCrea una copia del archivo en el directorio de destino y le asigna el nombre proporcionado.
moveTo(destination)FileMueve este elemento a la carpeta de destino proporcionada.
removeCommenter(emailAddress)FileQuita al usuario determinado de la lista de comentaristas del File.
removeCommenter(user)FileQuita al usuario determinado de la lista de comentaristas del File.
removeEditor(emailAddress)FileQuita al usuario especificado de la lista de editores del File.
removeEditor(user)FileQuita al usuario especificado de la lista de editores del File.
removeViewer(emailAddress)FileQuita al usuario determinado de la lista de usuarios que pueden ver y comentar el File.
removeViewer(user)FileQuita al usuario determinado de la lista de usuarios que pueden ver y comentar el File.
revokePermissions(emailAddress)FileRevoca el acceso a File que se otorgó al usuario determinado.
revokePermissions(user)FileRevoca el acceso a File que se otorgó al usuario determinado.
setContent(content)FileReemplaza el contenido del archivo por un reemplazo determinado.
setDescription(description)FileEstablece la descripción del File.
setName(name)FileEstablece el nombre del File.
setOwner(emailAddress)FileCambia el propietario de File.
setOwner(user)FileCambia el propietario de File.
setSecurityUpdateEnabled(enabled)FileEstablece si File requiere una clave de recurso para acceder cuando se comparte a través de un vínculo.
setShareableByEditors(shareable)FileEstablece si los usuarios con permisos de edición para el File pueden compartirlo con otros usuarios o cambiar los permisos.
setSharing(accessType, permissionType)FileEstablece qué clase de usuarios puede acceder a File y qué permisos se les otorgan, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
setStarred(starred)FileEstablece si el File se destaca en la unidad del usuario.
setTrashed(trashed)FileEstablece si el elemento File está en la papelera de la unidad del usuario.

FileIterator

Métodos

MétodoTipo de datos que se muestraDescripción breve
getContinuationToken()StringObtiene un token que se puede usar para reanudar esta iteración más adelante.
hasNext()BooleanDetermina si llamar a next() devolverá un elemento.
next()FileObtiene el siguiente elemento de la colección de archivos o carpetas.

Folder

Métodos

MétodoTipo de datos que se muestraDescripción breve
addEditor(emailAddress)FolderAgrega el usuario especificado a la lista de editores del Folder.
addEditor(user)FolderAgrega el usuario especificado a la lista de editores del Folder.
addEditors(emailAddresses)FolderAgrega el array de usuarios proporcionado a la lista de editores del Folder.
addViewer(emailAddress)FolderAgrega el usuario determinado a la lista de usuarios que pueden ver el Folder.
addViewer(user)FolderAgrega el usuario determinado a la lista de usuarios que pueden ver el Folder.
addViewers(emailAddresses)FolderAgrega el array de usuarios proporcionado a la lista de usuarios que pueden ver el Folder.
createFile(blob)FileCrea un archivo en la carpeta actual a partir de un Blob determinado de datos arbitrarios.
createFile(name, content)FileCrea un archivo de texto en la carpeta actual con el nombre y el contenido especificados.
createFile(name, content, mimeType)FileCrea un archivo en la carpeta actual con el nombre, el contenido y el tipo de MIME especificados.
createFolder(name)FolderCrea una carpeta en la carpeta actual con el nombre indicado.
createShortcut(targetId)FileCrea un acceso directo al ID del elemento de Drive proporcionado y lo devuelve.
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)FileCrea un acceso directo al ID del elemento de Drive y a la clave de recurso proporcionados, y lo devuelve.
getAccess(email)PermissionObtiene el permiso otorgado a un usuario específico.
getAccess(user)PermissionObtiene el permiso otorgado a un usuario específico.
getDateCreated()DateObtiene la fecha en que se creó el objeto Folder.
getDescription()StringObtiene la descripción del Folder.
getEditors()User[]Obtiene la lista de editores de este Folder.
getFiles()FileIteratorObtiene una colección de todos los archivos que son secundarios de la carpeta actual.
getFilesByName(name)FileIteratorObtiene una colección de todos los archivos que son elementos secundarios de la carpeta actual y tienen el nombre determinado.
getFilesByType(mimeType)FileIteratorObtiene una colección de todos los archivos que son elementos secundarios de la carpeta actual y tienen el tipo de MIME determinado.
getFolders()FolderIteratorObtiene una colección de todas las carpetas secundarias de la carpeta actual.
getFoldersByName(name)FolderIteratorObtiene una colección de todas las carpetas que son secundarias de la carpeta actual y tienen el nombre determinado.
getId()StringObtiene el ID del Folder.
getLastUpdated()DateObtiene la fecha en que se actualizó por última vez el objeto Folder.
getName()StringObtiene el nombre del Folder.
getOwner()UserObtiene el propietario de este Folder.
getParents()FolderIteratorObtiene una colección de carpetas que son superiores inmediatas del Folder.
getResourceKey()StringObtiene la clave de recurso del Folder que se requiere para acceder a los elementos que se compartieron con un vínculo.
getSecurityUpdateEligible()BooleanObtiene si este Folder es apto para aplicar la actualización de seguridad que requiere una clave de recurso para acceder cuando se comparte con un vínculo.
getSecurityUpdateEnabled()BooleanIndica si este Folder requiere una clave de recurso para acceder a él cuando se comparte a través de un vínculo.
getSharingAccess()AccessObtiene la clase de usuarios que pueden acceder al Folder, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
getSharingPermission()PermissionObtiene el permiso otorgado a los usuarios que pueden acceder a Folder, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
getSize()IntegerObtiene la cantidad de bytes que se usan para almacenar el objeto Folder en Drive.
getUrl()StringObtiene la URL que se puede usar para abrir el objeto Folder en una app de Google, como Drive o Documentos.
getViewers()User[]Obtiene la lista de lectores y comentaristas de este Folder.
isShareableByEditors()BooleanDetermina si los usuarios con permisos de edición para el Folder pueden compartirlo con otros usuarios o cambiar los permisos.
isStarred()BooleanDetermina si el Folder se marcó como destacado en el Drive del usuario.
isTrashed()BooleanDetermina si el elemento Folder está en la papelera de la unidad del usuario.
moveTo(destination)FolderMueve este elemento a la carpeta de destino proporcionada.
removeEditor(emailAddress)FolderQuita al usuario especificado de la lista de editores del Folder.
removeEditor(user)FolderQuita al usuario especificado de la lista de editores del Folder.
removeViewer(emailAddress)FolderQuita al usuario determinado de la lista de usuarios que pueden ver y comentar el Folder.
removeViewer(user)FolderQuita al usuario determinado de la lista de usuarios que pueden ver y comentar el Folder.
revokePermissions(emailAddress)FolderRevoca el acceso a Folder que se otorgó al usuario determinado.
revokePermissions(user)FolderRevoca el acceso a Folder que se otorgó al usuario determinado.
searchFiles(params)FileIteratorObtiene una colección de todos los archivos que son elementos secundarios de la carpeta actual y que coinciden con los criterios de búsqueda proporcionados.
searchFolders(params)FolderIteratorObtiene una colección de todas las carpetas secundarias de la carpeta actual que coinciden con los criterios de búsqueda proporcionados.
setDescription(description)FolderEstablece la descripción del Folder.
setName(name)FolderEstablece el nombre del Folder.
setOwner(emailAddress)FolderCambia el propietario de Folder.
setOwner(user)FolderCambia el propietario de Folder.
setSecurityUpdateEnabled(enabled)FolderEstablece si Folder requiere una clave de recurso para acceder cuando se comparte a través de un vínculo.
setShareableByEditors(shareable)FolderEstablece si los usuarios con permisos de edición para el Folder pueden compartirlo con otros usuarios o cambiar los permisos.
setSharing(accessType, permissionType)FolderEstablece qué clase de usuarios puede acceder a Folder y qué permisos se les otorgan, además de los usuarios individuales a los que se les otorgó acceso de forma explícita.
setStarred(starred)FolderEstablece si el Folder se destaca en la unidad del usuario.
setTrashed(trashed)FolderEstablece si el elemento Folder está en la papelera de la unidad del usuario.

FolderIterator

Métodos

MétodoTipo de datos que se muestraDescripción breve
getContinuationToken()StringObtiene un token que se puede usar para reanudar esta iteración más adelante.
hasNext()BooleanDetermina si llamar a next() devolverá un elemento.
next()FolderObtiene el siguiente elemento de la colección de archivos o carpetas.

Permission

Propiedades

PropiedadTipoDescripción
VIEWEnumLos usuarios que pueden acceder al archivo o la carpeta solo pueden verlo o copiarlo.
EDITEnumLos usuarios que pueden acceder al archivo o la carpeta pueden editarlo.
COMMENTEnumLos usuarios que pueden acceder al archivo o la carpeta solo pueden verlo, copiarlo o comentarlo.
OWNEREnumEl usuario es propietario del archivo o la carpeta.
ORGANIZEREnumUsuarios que pueden organizar archivos y carpetas dentro de una unidad compartida
FILE_ORGANIZEREnumUsuarios que pueden editar, descartar y mover contenido dentro de una unidad compartida.
NONEEnumEl usuario no tiene permisos para el archivo o la carpeta.

User

Métodos

MétodoTipo de datos que se muestraDescripción breve
getDomain()String|nullObtiene el nombre de dominio asociado a la cuenta del usuario.
getEmail()String|nullObtiene la dirección de correo electrónico del usuario.
getName()String|nullObtiene el nombre del usuario.
getPhotoUrl()String|nullObtiene la URL de la foto del usuario.