Class DriveApp

DriveApp

Permet aux scripts de créer, rechercher et modifier des fichiers et des dossiers dans Google Drive. Pour accéder aux fichiers ou aux dossiers des Drive partagés, utilisez le service avancé de Drive.

// 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());
}

Propriétés

PropriétéTypeDescription
AccessAccessÉnumération représentant les classes d'utilisateurs qui peuvent accéder à un fichier ou à un dossier, en plus des utilisateurs individuels auxquels l'accès a été explicitement accordé.
PermissionPermissionÉnumération représentant les autorisations accordées aux utilisateurs pouvant accéder à un fichier ou à un dossier, en plus des utilisateurs individuels auxquels l'accès a été explicitement accordé.

Méthodes

MéthodeType renvoyéBrève description
continueFileIterator(continuationToken)FileIteratorReprend une itération de fichier à l'aide du jeton de continuation d'un itérateur précédent.
continueFolderIterator(continuationToken)FolderIteratorReprend une itération de dossier à l'aide du jeton de continuation d'un itérateur précédent.
createFile(blob)FileCrée un fichier à la racine du Drive de l'utilisateur à partir d'un Blob donné de données arbitraires.
createFile(name, content)FileCrée un fichier texte à la racine du Drive de l'utilisateur avec le nom et le contenu spécifiés.
createFile(name, content, mimeType)FileCrée un fichier à la racine du Drive de l'utilisateur avec le nom indiqué, le contenu et le type MIME.
createFolder(name)FolderCrée un dossier portant le nom donné à la racine du Drive de l'utilisateur.
createShortcut(targetId)FileCrée un raccourci vers l'ID d'élément Drive fourni, puis l'affiche.
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)FileCrée un raccourci vers l'ID d'élément Drive et la clé de ressource fournis, puis le renvoie.
enforceSingleParent(value)voidActive ou désactive le comportement "applySingleParent" pour tous les appels affectant les parents d'éléments.
getFileById(id)FileRécupère le fichier avec l'identifiant donné.
getFileByIdAndResourceKey(id, resourceKey)FileRécupère le fichier avec l'ID et la clé de ressource indiqués.
getFiles()FileIteratorRécupère une collection de tous les fichiers dans le Drive de l'utilisateur.
getFilesByName(name)FileIteratorRécupère une collection de tous les fichiers portant le nom donné dans le Drive de l'utilisateur.
getFilesByType(mimeType)FileIteratorRécupère une collection de tous les fichiers du Drive de l'utilisateur qui présentent le type MIME donné.
getFolderById(id)FolderRécupère le dossier avec l'ID donné.
getFolderByIdAndResourceKey(id, resourceKey)FolderRécupère le dossier avec l'ID et la clé de ressource indiqués.
getFolders()FolderIteratorRécupère une collection de tous les dossiers dans le Drive de l'utilisateur.
getFoldersByName(name)FolderIteratorRécupère une collection de tous les dossiers du Drive de l'utilisateur portant le nom donné.
getRootFolder()FolderRécupère le dossier à la racine du Drive de l'utilisateur.
getStorageLimit()IntegerRécupère le nombre d'octets que l'utilisateur est autorisé à stocker dans Drive.
getStorageUsed()IntegerRécupère le nombre d'octets que l'utilisateur stocke actuellement dans Drive.
getTrashedFiles()FileIteratorRécupère une collection de tous les fichiers dans la corbeille du Drive de l'utilisateur.
getTrashedFolders()FolderIteratorRécupère une collection de tous les dossiers contenus dans la corbeille du Drive de l'utilisateur.
searchFiles(params)FileIteratorRécupère une collection de tous les fichiers du Drive de l'utilisateur qui correspondent aux critères de recherche indiqués.
searchFolders(params)FolderIteratorRécupère une collection de tous les dossiers du Drive de l'utilisateur correspondant aux critères de recherche indiqués.

Documentation détaillée

continueFileIterator(continuationToken)

Reprend une itération de fichier à l'aide du jeton de continuation d'un itérateur précédent. Cette méthode est utile si le traitement d'un itérateur en une seule exécution dépasse la durée maximale d'exécution. Les jetons de continuation sont généralement valides pendant une semaine.

// 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());
}

Paramètres

NomTypeDescription
continuationTokenStringJeton de continuation d'un itérateur de fichier précédent.

Renvois

FileIterator : collection de fichiers restés dans un itérateur précédent lorsque le jeton de continuation a été généré.


continueFolderIterator(continuationToken)

Reprend une itération de dossier à l'aide du jeton de continuation d'un itérateur précédent. Cette méthode est utile si le traitement d'un itérateur en une seule exécution dépasse la durée maximale d'exécution. Les jetons de continuation sont généralement valides pendant une semaine.

// 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());
}

Paramètres

NomTypeDescription
continuationTokenStringJeton de continuation d'un itérateur de dossier précédent.

Renvois

FolderIterator : collection de dossiers restés dans un itérateur précédent lorsque le jeton de continuation a été généré.


createFile(blob)

Crée un fichier à la racine du Drive de l'utilisateur à partir d'un Blob donné de données arbitraires.

// Create an image file in Google Drive using the Maps service.
var blob = Maps.newStaticMap().setCenter('76 9th Avenue, New York NY').getBlob();
DriveApp.createFile(blob);

Paramètres

NomTypeDescription
blobBlobSourceDonnées du nouveau fichier.

Renvois

File : nouveau fichier

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

createFile(name, content)

Crée un fichier texte à la racine du Drive de l'utilisateur avec le nom et le contenu spécifiés. Génère une exception si content est supérieur à 50 Mo.

// Create a text file with the content "Hello, world!"
DriveApp.createFile('New Text File', 'Hello, world!');

Paramètres

NomTypeDescription
nameStringNom du nouveau fichier.
contentStringContenu du nouveau fichier.

Renvois

File : nouveau fichier

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

createFile(name, content, mimeType)

Crée un fichier à la racine du Drive de l'utilisateur avec le nom indiqué, le contenu et le type MIME. Génère une exception si content est supérieur à 10 Mo.

// Create an HTML file with the content "Hello, world!"
DriveApp.createFile('New HTML File', '<b>Hello, world!</b>', MimeType.HTML);

Paramètres

NomTypeDescription
nameStringNom du nouveau fichier.
contentStringContenu du nouveau fichier.
mimeTypeStringType MIME du nouveau fichier.

Renvois

File : nouveau fichier

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

createFolder(name)

Crée un dossier portant le nom donné à la racine du Drive de l'utilisateur.

Paramètres

NomTypeDescription
nameStringNom du nouveau dossier.

Renvois

Folder : nouveau dossier.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

createShortcut(targetId)

Crée un raccourci vers l'ID d'élément Drive fourni, puis l'affiche.

Paramètres

NomTypeDescription
targetIdStringID du fichier ou du dossier cible.

Renvois

File : nouveau raccourci.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)

Crée un raccourci vers l'ID d'élément Drive et la clé de ressource fournis, puis le renvoie. Une clé de ressource est un paramètre supplémentaire qui doit être transmis pour accéder au fichier ou au dossier cible qui a été partagé à l'aide d'un lien.

// 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());
}

Paramètres

NomTypeDescription
targetIdStringID du fichier ou du dossier cible.
targetResourceKeyStringClé de ressource du fichier ou du dossier cible.

Renvois

File : nouveau raccourci.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

enforceSingleParent(value)

Active ou désactive le comportement "applySingleParent" pour tous les appels affectant les parents d'éléments.

Pour en savoir plus, consultez le blog Simplification de la structure des dossiers et des modèles de partage de Google Drive.

// Enables enforceSingleParent behavior for all calls affecting item parents.
DriveApp.enforceSingleParent(true);

Paramètres

NomTypeDescription
valueBooleanNouvel état de l'indicateur applySingleParent.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive

getFileById(id)

Récupère le fichier avec l'identifiant donné. La fonction renvoie une exception de script si le fichier n'existe pas ou si l'utilisateur n'est pas autorisé à y accéder.

// 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());
}

Paramètres

NomTypeDescription
idStringID du fichier.

Renvois

File : fichier avec l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFileByIdAndResourceKey(id, resourceKey)

Récupère le fichier avec l'ID et la clé de ressource indiqués. Les clés de ressource sont un paramètre supplémentaire qui doit être transmis pour accéder aux fichiers qui ont été partagés à l'aide d'un lien.

Génère une exception de script si le fichier n'existe pas ou si l'utilisateur n'est pas autorisé à y accéder.

// 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());
}

Paramètres

NomTypeDescription
idStringID du fichier.
resourceKeyStringClé d'accès à la ressource du dossier.

Renvois

File : fichier avec l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFiles()

Récupère une collection de tous les fichiers dans le Drive de l'utilisateur.

Renvois

FileIterator : collection de tous les fichiers dans le Drive de l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFilesByName(name)

Récupère une collection de tous les fichiers portant le nom donné dans le Drive de l'utilisateur.

Paramètres

NomTypeDescription
nameStringNom des fichiers à rechercher.

Renvois

FileIterator : collection de tous les fichiers portant le nom donné dans le Drive de l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFilesByType(mimeType)

Récupère une collection de tous les fichiers du Drive de l'utilisateur qui présentent le type MIME donné.

Paramètres

NomTypeDescription
mimeTypeStringType MIME des fichiers à rechercher.

Renvois

FileIterator : collection de tous les fichiers du Drive de l'utilisateur ayant le type MIME donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolderById(id)

Récupère le dossier avec l'ID donné. Génère une exception de script si le dossier n'existe pas ou si l'utilisateur n'est pas autorisé à y accéder.

Paramètres

NomTypeDescription
idStringID du dossier.

Renvois

Folder : dossier avec l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolderByIdAndResourceKey(id, resourceKey)

Récupère le dossier avec l'ID et la clé de ressource indiqués. Les clés de ressource sont des paramètres supplémentaires qui doivent être transmis pour accéder aux dossiers partagés à l'aide d'un lien.

Génère une exception de script si le dossier n'existe pas ou si l'utilisateur n'est pas autorisé à y accéder.

Paramètres

NomTypeDescription
idStringID du dossier.
resourceKeyStringClé d'accès à la ressource du dossier.

Renvois

Folder : dossier avec l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFolders()

Récupère une collection de tous les dossiers dans le Drive de l'utilisateur.

Renvois

FolderIterator : collection de tous les dossiers du Drive de l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getFoldersByName(name)

Récupère une collection de tous les dossiers du Drive de l'utilisateur portant le nom donné.

Paramètres

NomTypeDescription
nameStringNom des dossiers à rechercher.

Renvois

FolderIterator : collection de tous les dossiers du Drive de l'utilisateur portant le nom donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getRootFolder()

Récupère le dossier à la racine du Drive de l'utilisateur.

// 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());

Renvois

Folder : dossier racine du Drive de l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getStorageLimit()

Récupère le nombre d'octets que l'utilisateur est autorisé à stocker dans Drive.

// Gets the number of bytes the user can store in Drive and logs it to the console.
console.log(DriveApp.getStorageLimit());

Renvois

Integer : nombre d'octets que l'utilisateur est autorisé à stocker dans Drive.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getStorageUsed()

Récupère le nombre d'octets que l'utilisateur stocke actuellement dans Drive.

// Gets the number of bytes the user is currently storing in Drive and logs it to the console.
console.log(DriveApp.getStorageUsed());

Renvois

Integer : nombre d'octets stockés actuellement dans Drive par l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getTrashedFiles()

Récupère une collection de tous les fichiers dans la corbeille du Drive de l'utilisateur.

// 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());
}

Renvois

FileIterator : collection de fichiers dans la corbeille.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

getTrashedFolders()

Récupère une collection de tous les dossiers contenus dans la corbeille du Drive de l'utilisateur.

// 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());
}

Renvois

FolderIterator : collection de dossiers présents dans la corbeille.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

searchFiles(params)

Récupère une collection de tous les fichiers du Drive de l'utilisateur qui correspondent aux critères de recherche indiqués. Les critères de recherche sont détaillés dans la documentation du SDK Google Drive. Notez que le service Drive utilise la version 2 de l'API Drive et que certains champs de requête diffèrent de la version 3. Examinez les différences de champs entre les versions 2 et 3.

L'argument params est une chaîne de requête pouvant contenir des valeurs de chaîne. Veillez donc à bien échapper les guillemets (par exemple, "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.""
var files = DriveApp.searchFiles(
    'modifiedDate > "2022-02-28" and title contains "untitled"');
while (files.hasNext()) {
  var file = files.next();
  console.log(file.getName());
}

Paramètres

NomTypeDescription
paramsStringLes critères de recherche, tels que détaillés dans la documentation du SDK Google Drive

Renvois

FileIterator : collection de tous les fichiers du Drive de l'utilisateur qui correspondent aux critères de recherche.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

searchFolders(params)

Récupère une collection de tous les dossiers du Drive de l'utilisateur correspondant aux critères de recherche indiqués. Les critères de recherche sont détaillés dans la documentation du SDK Google Drive. Notez que le service Drive utilise la version 2 de l'API Drive et que certains champs de requête diffèrent de la version 3. Examinez les différences de champs entre les versions 2 et 3.

L'argument params est une chaîne de requête pouvant contenir des valeurs de chaîne. Veillez donc à bien échapper les guillemets (par exemple, "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.
var folders = DriveApp.searchFolders('starred = true and "me" in owners');
while (folders.hasNext()) {
  var folder = folders.next();
  console.log(folder.getName());
}

Paramètres

NomTypeDescription
paramsStringLes critères de recherche, tels que détaillés dans la documentation du SDK Google Drive

Renvois

FolderIterator : collection de tous les dossiers du Drive de l'utilisateur qui correspondent aux critères de recherche.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation associée à un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/drive.readonly
  • https://www.googleapis.com/auth/drive

Méthodes obsolètes