Permite que scripts criem, encontrem e modifiquem arquivos e pastas no Google Drive. Embora o serviço integrado do Drive seja mais fácil de usar, ele tem algumas limitações. Para ter acesso aos recursos e suporte mais atualizados e acessar arquivos ou pastas em drives compartilhados, use o serviço avançado do Drive.
// Logs the name of every file in the user's Drive. const files = DriveApp.getFiles(); while (files.hasNext()) { const file = files.next(); console.log(file.getName()); }
Propriedades
| Propriedade | Tipo | Descrição |
|---|---|---|
Access | Access | Uma enumeração que representa classes de usuários que podem acessar um arquivo ou pasta, além de usuários individuais que receberam acesso explícito. |
Permission | Permission | Uma enumeração que representa as permissões concedidas aos usuários que podem acessar um arquivo ou uma pasta, além de usuários individuais que receberam acesso explícito. |
Métodos
| Método | Tipo de retorno | Breve descrição |
|---|---|---|
continue | File | Retoma uma iteração de arquivo usando um token de continuação de um iterador anterior. |
continue | Folder | Retoma uma iteração de pasta usando um token de continuação de um iterador anterior. |
create | File | Cria um arquivo na raiz do Drive do usuário com um determinado Blob de dados arbitrários. |
create | File | Cria um arquivo de texto na raiz do Drive do usuário com o nome e o conteúdo especificados. |
create | File | Cria um arquivo na raiz do Drive do usuário com o nome, o conteúdo e o tipo MIME especificados. |
create | Folder | Cria uma pasta na raiz do Drive do usuário com o nome especificado. |
create | File | Cria e retorna um atalho para o ID do item do Drive fornecido. |
create | File | Cria um atalho para o ID do item do Drive e a chave do recurso fornecidos e o retorna. |
enforce | void | Ativa ou desativa o comportamento "enforceSingleParent" para todas as chamadas que afetam os itens principais. |
get | File | Recebe o arquivo com o ID especificado. |
get | File | Recebe o arquivo com o ID e a chave de recurso especificados. |
get | File | Recebe uma coleção de todos os arquivos no Drive do usuário. |
get | File | Recebe uma coleção de todos os arquivos no Drive do usuário com o nome especificado. |
get | File | Recebe uma coleção de todos os arquivos no Drive do usuário que têm o tipo MIME especificado. |
get | Folder | Recebe a pasta com o ID especificado. |
get | Folder | Recebe a pasta com o ID e a chave de recurso especificados. |
get | Folder | Recebe uma coleção de todas as pastas no Drive do usuário. |
get | Folder | Recebe uma coleção de todas as pastas no Drive do usuário com o nome especificado. |
get | Folder | Recebe a pasta na raiz do Drive do usuário. |
get | Integer | Recebe o número de bytes que o usuário pode armazenar no Drive. |
get | Integer | Recebe o número de bytes que o usuário está armazenando no Drive. |
get | File | Recebe uma coleção de todos os arquivos na lixeira do Drive do usuário. |
get | Folder | Recebe uma coleção de todas as pastas na lixeira do Drive do usuário. |
search | File | Recebe uma coleção de todos os arquivos no Drive do usuário que correspondem aos critérios de pesquisa especificados. |
search | Folder | Recebe uma coleção de todas as pastas no Drive do usuário que correspondem aos critérios de pesquisa especificados. |
Documentação detalhada
continueFileIterator(continuationToken)
Retoma uma iteração de arquivo usando um token de continuação de um iterador anterior. Esse método é útil se o processamento de um iterador em uma execução exceder o tempo máximo de execução. Os tokens de continuação geralmente são válidos por uma semana.
// Continues getting a list of all 'Untitled document' files in the user's // Drive. Creates a file iterator named 'previousIterator'. const previousIterator = DriveApp.getFilesByName('Untitled document'); // Gets continuation token from the previous file iterator. const continuationToken = previousIterator.getContinuationToken(); // Creates a new iterator using the continuation token from the previous file // iterator. const newIterator = DriveApp.continueFileIterator(continuationToken); // Resumes the file iteration using a continuation token from 'firstIterator' // and logs the file name. if (newIterator.hasNext()) { const file = newIterator.next(); console.log(file.getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
continuation | String | Um token de continuação de um iterador de arquivo anterior. |
Retornar
FileIterator: uma coleção de arquivos que permaneceram em um iterador anterior quando o token de continuação
foi gerado.
continueFolderIterator(continuationToken)
Retoma uma iteração de pasta usando um token de continuação de um iterador anterior. Esse método é útil se o processamento de um iterador em uma execução exceder o tempo máximo de execução. Os tokens de continuação geralmente são válidos por uma semana.
// Continues getting a list of all folders in user's Drive. // Creates a folder iterator named 'previousIterator'. const previousIterator = DriveApp.getFolders(); // Gets continuation token from the previous folder iterator. const continuationToken = previousIterator.getContinuationToken(); // Creates a new iterator using the continuation token from the previous folder // iterator. const newIterator = DriveApp.continueFolderIterator(continuationToken); // Resumes the folder iteration using a continuation token from the previous // iterator and logs the folder name. if (newIterator.hasNext()) { const folder = newIterator.next(); console.log(folder.getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
continuation | String | Um token de continuação de um iterador de pasta anterior. |
Retornar
FolderIterator: uma coleção de pastas que permaneceram em um iterador anterior quando o token de continuação foi gerado.
createFile(blob)
Cria um arquivo na raiz do Drive do usuário com um determinado Blob de dados arbitrários.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
blob | Blob | Os dados do novo arquivo. |
Retornar
File: o novo arquivo.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
createFile(name, content)
Cria um arquivo de texto na raiz do Drive do usuário com o nome e o conteúdo especificados. Gera uma exceção se content for maior que 50 MB.
// Create a text file with the content "Hello, world!" DriveApp.createFile('New Text File', 'Hello, world!');
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
name | String | O nome do novo arquivo. |
content | String | O conteúdo do novo arquivo. |
Retornar
File: o novo arquivo.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
createFile(name, content, mimeType)
Cria um arquivo na raiz do Drive do usuário com o nome, o conteúdo e o tipo MIME especificados. Gera uma exceção se content for maior que 10 MB.
// Create an HTML file with the content "Hello, world!" DriveApp.createFile('New HTML File', '<b>Hello, world!</b>', MimeType.HTML);
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
name | String | O nome do novo arquivo. |
content | String | O conteúdo do novo arquivo. |
mime | String | O tipo MIME do novo arquivo. |
Retornar
File: o novo arquivo.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
createFolder(name)
createShortcut(targetId)
Cria e retorna um atalho para o ID do item do Drive fornecido.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
target | String | O ID do arquivo ou da pasta de destino. |
Retornar
File: o novo atalho.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)
Cria um atalho para o ID do item do Drive e a chave do recurso fornecidos e o retorna. Uma chave de recurso é um parâmetro adicional que precisa ser transmitido para acessar o arquivo ou a pasta de destino compartilhada usando um link.
// Creates shortcuts for all folders in the user's drive that have a specific // name. // TODO(developer): Replace 'Test-Folder' with a valid folder name in your // drive. const folders = DriveApp.getFoldersByName('Test-Folder'); // Iterates through all folders named 'Test-Folder'. while (folders.hasNext()) { const folder = folders.next(); // Creates a shortcut to the provided Drive item ID and resource key, and // returns it. DriveApp.createShortcutForTargetIdAndResourceKey( folder.getId(), folder.getResourceKey(), ); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
target | String | O ID do arquivo ou da pasta de destino. |
target | String | A chave do recurso do arquivo ou pasta de destino. |
Retornar
File: o novo atalho.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
enforceSingleParent(value)
Ativa ou desativa o comportamento "enforceSingleParent" para todas as chamadas que afetam os itens principais.
Consulte o blog Simplificando a estrutura de pastas e os modelos de compartilhamento do Google Drive para mais detalhes.
// Enables enforceSingleParent behavior for all calls affecting item parents. DriveApp.enforceSingleParent(true);
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
value | Boolean | O novo estado da flag "enforceSingleParent". |
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive
getFileById(id)
Recebe o arquivo com o ID especificado. Gera uma exceção de script se o arquivo não existir ou se o usuário não tiver permissão para acessá-lo.
// Gets a list of all files in Google Drive with the given name. // TODO(developer): Replace 'Test' with your file name. const files = DriveApp.getFilesByName('Test'); if (files.hasNext()) { // Gets the ID of each file in the list. const fileId = files.next().getId(); // Gets the file name using its ID and logs it to the console. console.log(DriveApp.getFileById(fileId).getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
id | String | O ID do arquivo. |
Retornar
File: o arquivo com o ID especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFileByIdAndResourceKey(id, resourceKey)
Recebe o arquivo com o ID e a chave de recurso especificados. As chaves de recurso são um parâmetro adicional que precisa ser transmitido para acessar arquivos compartilhados usando um link.
Gera uma exceção de script se o arquivo não existir ou se o usuário não tiver permissão para acessá-lo.
// Gets a list of all files in Drive with the given name. // TODO(developer): Replace 'Test' with your file name. const files = DriveApp.getFilesByName('Test'); if (files.hasNext()) { // Gets the first file in the list. const file = files.next(); // Gets the ID and resource key. const key = file.getResourceKey(); const id = file.getId(); // Logs the file name to the console using its ID and resource key. console.log(DriveApp.getFileByIdAndResourceKey(id, key).getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
id | String | O ID do arquivo. |
resource | String | A chave de recurso da pasta. |
Retornar
File: o arquivo com o ID especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFiles()
Recebe uma coleção de todos os arquivos no Drive do usuário.
Retornar
FileIterator: uma coleção de todos os arquivos no Drive do usuário.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFilesByName(name)
Recebe uma coleção de todos os arquivos no Drive do usuário com o nome especificado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
name | String | O nome dos arquivos a serem encontrados. |
Retornar
FileIterator: uma coleção de todos os arquivos no Drive do usuário com o nome especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFilesByType(mimeType)
Recebe uma coleção de todos os arquivos no Drive do usuário que têm o tipo MIME especificado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
mime | String | O tipo MIME dos arquivos a serem encontrados. |
Retornar
FileIterator: uma coleção de todos os arquivos no Drive do usuário que têm o tipo MIME especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFolderById(id)
Recebe a pasta com o ID especificado. Gera uma exceção de script se a pasta não existir ou o usuário não tiver permissão para acessar.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
id | String | O ID da pasta. |
Retornar
Folder: a pasta com o ID especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFolderByIdAndResourceKey(id, resourceKey)
Recebe a pasta com o ID e a chave de recurso especificados. As chaves de recurso são um parâmetro adicional que precisa ser transmitido para acessar pastas compartilhadas usando um link.
Gera uma exceção de script se a pasta não existir ou se o usuário não tiver permissão para acessá-la.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
id | String | O ID da pasta. |
resource | String | A chave de recurso da pasta. |
Retornar
Folder: a pasta com o ID especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFolders()
Recebe uma coleção de todas as pastas no Drive do usuário.
Retornar
FolderIterator: uma coleção de todas as pastas no Drive do usuário.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getFoldersByName(name)
Recebe uma coleção de todas as pastas no Drive do usuário com o nome especificado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
name | String | O nome das pastas a serem encontradas. |
Retornar
FolderIterator: uma coleção de todas as pastas no Drive do usuário com o nome especificado.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getRootFolder()
Recebe a pasta na raiz do Drive do usuário.
// Gets the user's My Drive folder and logs its name to the console. console.log(DriveApp.getRootFolder().getName()); // Logs the Drive owner's name to the console. console.log(DriveApp.getRootFolder().getOwner().getName());
Retornar
Folder: a pasta raiz do Drive do usuário.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getStorageLimit()
Recebe o número de bytes que o usuário pode armazenar no Drive.
// Gets the number of bytes the user can store in Drive and logs it to the // console. console.log(DriveApp.getStorageLimit());
Retornar
Integer: o número de bytes que o usuário pode armazenar no Drive.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getStorageUsed()
Recebe o número de bytes que o usuário está armazenando no Drive.
// Gets the number of bytes the user is currently storing in Drive and logs it // to the console. console.log(DriveApp.getStorageUsed());
Retornar
Integer: o número de bytes que o usuário está armazenando no Drive.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getTrashedFiles()
Recebe uma coleção de todos os arquivos na lixeira do Drive do usuário.
// Gets a list of all the files in the trash of the user's Drive. const trashFiles = DriveApp.getTrashedFiles(); // Logs the trash file names to the console. while (trashFiles.hasNext()) { const file = trashFiles.next(); console.log(file.getName()); }
Retornar
FileIterator: uma coleção de arquivos na lixeira.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
getTrashedFolders()
Recebe uma coleção de todas as pastas na lixeira do Drive do usuário.
// Gets a collection of all the folders in the trash of the user's Drive. const trashFolders = DriveApp.getTrashedFolders(); // Logs the trash folder names to the console. while (trashFolders.hasNext()) { const folder = trashFolders.next(); console.log(folder.getName()); }
Retornar
FolderIterator: uma coleção de pastas na lixeira.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
searchFiles(params)
Recebe uma coleção de todos os arquivos no Drive do usuário que correspondem aos critérios de pesquisa especificados. Os critérios de pesquisa estão detalhados na documentação do SDK do Google Drive. O serviço do Drive usa a v2 da API Drive, e alguns campos de consulta são diferentes da v3. Revise as diferenças de campo entre a v2 e a v3.
O argumento params é uma string de consulta que pode conter valores de string. Portanto, tome cuidado para fazer o escape das aspas corretamente (por exemplo, "title contains 'Gulliver\\'s
Travels'" ou 'title contains "Gulliver\'s Travels"').
// Logs the name of every file in the user's Drive that modified after February 28, // 2022 whose name contains "untitled."" const files = DriveApp.searchFiles( 'modifiedDate > "2022-02-28" and title contains "untitled"'); while (files.hasNext()) { const file = files.next(); console.log(file.getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
params | String | Os critérios de pesquisa, conforme detalhado na documentação do SDK do Google Drive. |
Retornar
FileIterator: uma coleção de todos os arquivos no Drive do usuário que correspondem aos critérios de pesquisa.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive
searchFolders(params)
Recebe uma coleção de todas as pastas no Drive do usuário que correspondem aos critérios de pesquisa especificados. Os critérios de pesquisa estão detalhados na documentação do SDK do Google Drive. O serviço do Drive usa a v2 da API Drive, e alguns campos de consulta são diferentes da v3. Revise as diferenças de campo entre a v2 e a v3.
O argumento params é uma string de consulta que pode conter valores de string. Portanto, tome cuidado para fazer o escape das aspas corretamente (por exemplo, "title contains 'Gulliver\\'s
Travels'" ou 'title contains "Gulliver\'s Travels"').
// Logs the name of every folder in the user's Drive that you own and is starred. const folders = DriveApp.searchFolders('starred = true and "me" in owners'); while (folders.hasNext()) { const folder = folders.next(); console.log(folder.getName()); }
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
params | String | Os critérios de pesquisa, conforme detalhado na documentação do SDK do Google Drive. |
Retornar
FolderIterator: uma coleção de todas as pastas no Drive do usuário que correspondem aos critérios de pesquisa.
Autorização
Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:
-
https://www.googleapis.com/auth/drive.readonly -
https://www.googleapis.com/auth/drive