Vous pouvez supprimer des fichiers et des dossiers Google Drive de Mon Drive et des Drive partagés. Deux options s'offrent à vous : mettre à la corbeille ou supprimer.
Vous pouvez placer des fichiers et des dossiers dans la corbeille, puis les restaurer (dans les 30 jours suivant leur suppression). Si vous supprimez des fichiers et des dossiers, ils sont définitivement supprimés de Drive. Si vous placez dans la corbeille, restaurez ou supprimez définitivement plusieurs fichiers ou dossiers à la fois, les modifications ne seront peut-être pas visibles avant un certain temps.
Ce guide explique comment vous pouvez vous débarrasser des fichiers dans Drive.
Utiliser le paramètre "fields"
Si vous souhaitez spécifier les champs à renvoyer dans la réponse, vous pouvez définir le paramètre système fields
avec n'importe quelle méthode de la ressource files
. Si vous omettez le paramètre fields
, le serveur renvoie un ensemble de champs par défaut spécifiques à la méthode. Par exemple, la méthode list
ne renvoie que les champs kind
, id
, name
, mimeType
et resourceKey
pour chaque fichier. Pour renvoyer différents champs, consultez Renvoyer des champs spécifiques.
Corbeille
Pour supprimer des fichiers Drive, vous pouvez les placer dans la corbeille. Les fichiers de la corbeille sont automatiquement supprimés au bout de 30 jours. Vous pouvez restaurer les fichiers de votre corbeille avant l'expiration du délai de 30 jours.
Seul le propriétaire d'un fichier peut le placer dans la corbeille. Les autres utilisateurs ne peuvent pas voir les fichiers qui s'y trouvent. Si vous tentez de placer dans la corbeille un fichier qui ne vous appartient pas, vous recevez une erreur insufficientFilePermissions
. Pour en savoir plus, consultez Autorisations.
Pour vérifier que vous êtes le propriétaire du fichier, appelez la méthode get
sur la ressource files
avec le paramètre de chemin d'accès fileId
et le paramètre fields
défini sur le champ booléen ownedByMe
. Le champ ownedByMe
n'est pas renseigné pour les fichiers des Drive partagés, car ils appartiennent au Drive partagé et non à des utilisateurs individuels. Pour en savoir plus sur le paramètre fields
, consultez Utiliser le paramètre "fields".
Si vous n'êtes pas le propriétaire du fichier, mais que vous souhaitez tout de même en obtenir une copie, procédez de l'une des manières suivantes :
- Faites une copie du fichier.
- Contactez son propriétaire pour lui demander de le restaurer à partir de la corbeille.
Placer un fichier dans la corbeille
Pour déplacer un fichier vers la corbeille, utilisez la méthode update
sur la ressource files
avec le paramètre de chemin fileId
et définissez le champ booléen trashed
sur true
. Pour placer un fichier de Drive partagé dans la corbeille, vous devez également définir le paramètre de requête booléen supportsAllDrives
sur true
. Pour en savoir plus, consultez Implémenter la compatibilité avec les Drives partagés.
Si la requête aboutit, le corps de la réponse contient une instance de la ressource files
.
L'exemple de code suivant montre comment utiliser fileId
pour marquer le fichier comme placé dans la corbeille :
Python
body_value = {'trashed': True}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': true
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
Remplacez FILE_ID par le fileId
du fichier que vous souhaitez mettre à la corbeille.
Déterminer les propriétés d'un fichier placé dans la corbeille
Lorsqu'un fichier est placé dans la corbeille, vous pouvez récupérer des propriétés de fichier supplémentaires. Vous pouvez utiliser la méthode get
sur la ressource files
avec le paramètre de chemin fileId
et utiliser l'un des champs supprimés suivants dans le paramètre fields
. Pour en savoir plus sur le paramètre fields
, consultez Utiliser le paramètre "fields".
Les champs suivants sont renseignés pour tous les fichiers :
trashed
: indique si le fichier a été placé dans la corbeille, de manière explicite ou à partir d'un dossier parent placé dans la corbeille. Notez que si l'utilisation detrashed
avec la méthodeupdate
définit l'état du fichier, la méthodeget
récupère l'état du fichier.explicitlyTrashed
: indique si le fichier a été explicitement placé dans la corbeille, par opposition à un placement récursif dans la corbeille à partir d'un dossier parent.
Les champs suivants ne sont renseignés que pour les fichiers situés dans un Drive partagé :
trashedTime
: heure à laquelle l'élément a été placé dans la corbeille, au format date et heure RFC 3339. Si vous utilisez la version 2 de l'API Drive, ce champ s'appelletrashedDate
.trashingUser
: utilisateur qui a explicitement mis le fichier à la corbeille.
Récupérer un fichier de la corbeille
Pour récupérer un fichier depuis la corbeille, utilisez la méthode update
sur la ressource files
avec le paramètre de chemin fileId
et définissez le champ booléen trashed
sur false
. Pour restaurer un fichier d'un Drive partagé, vous devez également définir le paramètre de requête booléen supportsAllDrives
sur true
. Pour en savoir plus, consultez Implémenter la compatibilité avec les Drives partagés.
Si la requête aboutit, le corps de la réponse contient une instance de la ressource files
.
L'exemple de code suivant montre comment utiliser fileId
pour marquer le fichier comme non supprimé :
Python
body_value = {'trashed': False}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': false
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
Remplacez FILE_ID par le fileId
du fichier que vous souhaitez restaurer.
Vider la corbeille
Vous pouvez supprimer définitivement tous les fichiers Drive que l'utilisateur a placés dans la corbeille à l'aide de la méthode emptyTrash
sur la ressource files
. Pour vider la corbeille d'un Drive partagé, vous devez également définir le paramètre de requête driveId
sur l'ID du Drive partagé.
Si la requête aboutit, le corps de la réponse contient un objet JSON vide.
L'exemple de code suivant montre comment utiliser fileId
pour supprimer définitivement tous les fichiers de la corbeille :
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
Supprimer
Vous pouvez supprimer définitivement un fichier Drive sans le déplacer dans la corbeille. Lorsque vous supprimez un fichier, les personnes avec lesquelles vous l'avez partagé n'y ont plus accès. Si vous souhaitez que d'autres personnes conservent l'accès au fichier, vous pouvez transférer la propriété à quelqu'un d'autre avant de le supprimer.
Pour supprimer un fichier d'un Drive partagé, l'utilisateur doit disposer de l'autorisation role=organizer
dans le dossier parent. Si vous supprimez un dossier, tous les descendants appartenant à l'utilisateur sont également supprimés. Pour en savoir plus, consultez Autorisations.
Pour supprimer définitivement un fichier appartenant à un utilisateur sans le placer dans la corbeille, utilisez la méthode delete
sur la ressource files
. Pour supprimer un fichier de Drive partagé, vous devez également définir le paramètre de requête booléen supportsAllDrives
sur true
. Pour en savoir plus, consultez Implémenter la compatibilité avec les Drives partagés.
Si la requête aboutit, le corps de la réponse contient un objet JSON vide.
L'exemple de code suivant montre comment utiliser fileId
pour supprimer le fichier :
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
Remplacez FILE_ID par le fileId
du fichier que vous souhaitez supprimer.
Autorisations
Le tableau suivant indique les autorisations de rôle requises pour mettre à la corbeille ou supprimer des fichiers et des dossiers. Pour obtenir la liste complète des rôles et des opérations autorisées pour chacun d'eux, consultez Rôles et autorisations.
Opération autorisée | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
---|---|---|---|---|---|---|
Placer des fichiers et des dossiers dans la corbeille | ||||||
Récupérer des fichiers et des dossiers de la corbeille | ||||||
Vider la corbeille | ||||||
Supprimer un fichier ou un dossier | ||||||
Supprimer des fichiers et des dossiers dans un Drive partagé [*] | ||||||
Supprimer un Drive partagé vide |
Capacités
Une ressource files
contient une collection de champs capabilities
booléens qui indiquent les fonctionnalités dont l'utilisateur dispose sur ce fichier.
Pour vérifier les capacités, appelez la méthode get
sur la ressource files
avec le paramètre de chemin d'accès fileId
, puis utilisez l'un des champs capabilities
suivants dans le paramètre fields
. Pour en savoir plus sur le paramètre fields
, consultez Utiliser le paramètre "fields".
Les champs suivants sont renseignés pour tous les fichiers :
capabilities.canTrash
: indique si l'utilisateur actuel peut placer ce fichier dans la corbeille.capabilities.canUntrash
: indique si l'utilisateur actuel peut restaurer ce fichier depuis la corbeille.capabilities.canDelete
: indique si l'utilisateur actuel peut supprimer ce fichier.capabilities.canRemoveChildren
: indique si l'utilisateur actuel peut supprimer des enfants de ce dossier. Cette valeur estfalse
lorsque l'élément n'est pas un dossier.
Les champs suivants ne sont renseignés que pour les fichiers situés dans un Drive partagé :
capabilities.canTrashChildren
: indique si l'utilisateur actuel peut placer les enfants de ce dossier dans la corbeille. Cette valeur estfalse
lorsque l'élément n'est pas un dossier.capabilities.canDeleteChildren
: indique si l'utilisateur actuel peut supprimer les enfants de ce dossier. Cette valeur estfalse
lorsque l'élément n'est pas un dossier.
Limites applicables aux fichiers et aux dossiers
Les fichiers et dossiers Drive, ainsi que les dossiers de Drive partagés, sont soumis à certaines limites de stockage.
En général, une fois la limite d'éléments atteinte, la seule façon de libérer de l'espace est de supprimer définitivement des éléments ou d'utiliser un autre compte. Il ne suffit pas de placer des fichiers dans la corbeille pour libérer de l'espace.
Pour en savoir plus sur les limites de fichiers et de dossiers, consultez les ressources suivantes :
- Limites applicables aux fichiers et aux dossiers dans Fichiers
- Limites applicables aux dossiers dans les Drive partagés
Articles associés
- Supprimer des fichiers dans Google Drive
- Différences entre les API Drive partagé et Mon Drive
- Rôles et autorisations