Class DriveApp

DriveApp

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

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

Propriétés

PropriétéTypeDescription
AccessAccessEnumération représentant les classes d'utilisateurs autorisés à accéder à un fichier ou à un dossier, en plus des utilisateurs individuels auxquels un accès a été explicitement accordé.
PermissionPermissionEnumération représentant les autorisations accordées aux utilisateurs pouvant accéder à un fichier ou à un dossier, en plus des utilisateurs individuels auxquels un accès a été explicitement accordé.

Méthodes

MéthodeType renvoyéBrève description
continueFileIterator(continuationToken)FileIteratorRéengage une itération de fichier à l'aide d'un jeton de continuation d'un itérateur précédent.
continueFolderIterator(continuationToken)FolderIteratorRéengage une itération de dossier à l'aide d'un jeton de continuation d'un itérateur précédent.
createFile(blob)FileCrée un fichier dans la racine de Drive de l'utilisateur à partir d'un Blob donné de données arbitraires.
createFile(name, content)FileCrée un fichier texte à la racine de Drive de l'utilisateur avec le nom et le contenu donnés.
createFile(name, content, mimeType)FileCrée un fichier à la racine de Drive de l'utilisateur avec le nom, le contenu et le type MIME donnés.
createFolder(name)FolderCrée un dossier dans le répertoire racine de Drive de l'utilisateur avec le nom donné.
createShortcut(targetId)FileCrée un raccourci vers l'ID d'élément Drive fourni, puis le renvoie.
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)FileCrée un raccourci vers l'ID de l'élément Drive et la clé de ressource fournis, puis le renvoie.
enforceSingleParent(value)voidActive ou désactive le comportement enforceSingleParent pour tous les appels affectant les parents des éléments.
getFileById(id)FileRécupère le fichier avec l'ID donné.
getFileByIdAndResourceKey(id, resourceKey)FileRécupère le fichier avec l'ID et la clé de ressource donnés.
getFiles()FileIteratorRécupère une collection de tous les fichiers de l'utilisateur dans Drive.
getFilesByName(name)FileIteratorRécupère la collection de tous les fichiers du Drive de l'utilisateur portant le nom donné.
getFilesByType(mimeType)FileIteratorRécupère la collection de tous les fichiers du Drive de l'utilisateur ayant 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 donnés.
getFolders()FolderIteratorRécupère une collection de tous les dossiers de Drive de l'utilisateur.
getFoldersByName(name)FolderIteratorRécupère la collection de tous les dossiers du Drive de l'utilisateur portant le nom donné.
getRootFolder()FolderRécupère le dossier racine de 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 de la corbeille de Drive de l'utilisateur.
getTrashedFolders()FolderIteratorRécupère une collection de tous les dossiers de la corbeille de Drive de l'utilisateur.
searchFiles(params)FileIteratorRécupère la collection de tous les fichiers de Drive de l'utilisateur correspondant aux critères de recherche donnés.
searchFolders(params)FolderIteratorRécupère une collection de tous les dossiers de Drive de l'utilisateur qui correspondent aux critères de recherche donnés.

Documentation détaillée

continueFileIterator(continuationToken)

Réengage une itération de fichier à l'aide d'un 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 le temps d'exécution maximal. 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 fichiers précédent.

Renvois

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


continueFolderIterator(continuationToken)

Réengage une itération de dossier à l'aide d'un 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 le temps d'exécution maximal. 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 dossiers précédent.

Renvois

FolderIterator : collection de dossiers qui sont 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 dans la racine de Drive de l'utilisateur à partir d'un Blob donné de données arbitraires.

Paramètres

NomTypeDescription
blobBlobSourceDonnées du nouveau fichier.

Renvois

File : nouveau fichier.

Autorisation

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

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

createFile(name, content)

Crée un fichier texte à la racine de Drive de l'utilisateur avec le nom et le contenu donné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 avec un ou plusieurs des champs d'application suivants:

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

createFile(name, content, mimeType)

Crée un fichier à la racine de Drive de l'utilisateur avec le nom, le contenu et le type MIME donnés. 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 avec un ou plusieurs des champs d'application suivants:

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

createFolder(name)

Crée un dossier dans le répertoire racine de Drive de l'utilisateur avec le nom donné.

Paramètres

NomTypeDescription
nameStringNom du nouveau dossier.

Renvois

Folder : nouveau dossier.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 le renvoie.

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 avec un ou plusieurs des champs d'application suivants:

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

createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)

Crée un raccourci vers l'ID de l'é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 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 avec un ou plusieurs des champs d'application suivants:

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

enforceSingleParent(value)

Active ou désactive le comportement enforceSingleParent pour tous les appels affectant les parents des éléments.

Pour en savoir plus, consultez l'article de blog Simplifier la structure des dossiers et les modèles de partage de Google Drive.

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

Paramètres

NomTypeDescription
valueBooleanNouvel état du flag enforceSingleParent.

Autorisation

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

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

getFileById(id)

Récupère le fichier avec l'ID donné. 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 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 associé à l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 donnés. Les clés de ressources sont un paramètre supplémentaire qui doit être transmis pour accéder aux fichiers 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é de ressource du dossier.

Renvois

File : fichier associé à l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 de l'utilisateur dans Drive.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 la collection de tous les fichiers du Drive de l'utilisateur portant le nom donné.

Paramètres

NomTypeDescription
nameStringNom des fichiers à rechercher.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 la collection de tous les fichiers du Drive de l'utilisateur ayant le type MIME donné.

Paramètres

NomTypeDescription
mimeTypeStringType MIME des fichiers à rechercher.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 associé à l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 donnés. Les clés de ressource sont un paramètre supplémentaire qui doit ê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é de ressource du dossier.

Renvois

Folder : dossier associé à l'ID donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 de Drive de l'utilisateur.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 : ensemble de tous les dossiers de Drive de l'utilisateur portant le nom donné.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 racine de 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 de Drive de l'utilisateur.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 avec 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 que l'utilisateur stocke actuellement dans Drive.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 de la corbeille de 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 avec 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 de la corbeille de 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 : ensemble de dossiers dans la corbeille.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 la collection de tous les fichiers de Drive de l'utilisateur correspondant aux critères de recherche donné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. Consultez les différences entre les champs de la version v2 et de la version v3.

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

Paramètres

NomTypeDescription
paramsStringLes critères de recherche, comme indiqué dans la documentation du SDK Google Drive.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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 de Drive de l'utilisateur correspondant aux critères de recherche donné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. Consultez les différences entre les champs de la version v2 et de la version v3.

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

Paramètres

NomTypeDescription
paramsStringLes critères de recherche, comme indiqué dans la documentation du SDK Google Drive.

Renvois

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

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec 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