Vous pouvez supprimer des fichiers et des dossiers Google Drive de votre compte Mon Drive et de vos Drive partagés. Pour ce faire, vous avez deux options: supprimer ou mettre à la corbeille.
Vous pouvez placer des fichiers et des dossiers dans la corbeille, puis les restaurer (dans les 30 jours suivant leur mise en corbeille). Si vous supprimez des fichiers et des dossiers, ils sont définitivement supprimés de Drive. Si vous placez plusieurs fichiers ou dossiers dans la corbeille, les restaurez ou les supprimez définitivement à la fois, les modifications ne seront peut-être pas visibles avant un certain temps.
Ce guide explique comment supprimer des fichiers dans Drive.
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 des fichiers à partir de la corbeille avant l'expiration du délai de 30 jours.
Seul le propriétaire du fichier peut le placer dans la corbeille, et les autres utilisateurs ne peuvent pas consulter les fichiers dans la corbeille du propriétaire. Si vous essayez de placer un fichier qui ne vous appartient pas dans la corbeille, un message d'erreur insufficientFilePermissions
s'affiche. Pour en savoir plus, consultez la section Autorisations.
Pour vérifier que vous êtes le propriétaire du fichier, appelez la méthode files.get
avec le paramètre fileId
et 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 renvoi de champs à l'aide du paramètre fields
, consultez Renvoyer des champs spécifiques pour un fichier.
Si vous n'êtes pas le propriétaire du fichier, mais que vous souhaitez tout de même obtenir une copie du fichier supprimé, procédez comme suit:
- faites une copie du fichier ;
- Contactez le propriétaire pour lui demander de le restaurer depuis la corbeille.
Placer un fichier dans la corbeille
Pour déplacer un fichier vers la corbeille, utilisez la méthode files.update
et définissez le champ trashed
sur True
. Pour mettre un fichier Drive partagé dans la corbeille, vous devez également définir le paramètre de requête supportsAllDrives
sur True
. Pour en savoir plus, consultez la section Implémenter la prise en charge des Drive 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 supprimé:
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 placer dans 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 d'autres propriétés files
. Vous pouvez utiliser la méthode files.get
et inclure les champs suivants dans le paramètre fields
. Pour en savoir plus, consultez Renvoyer des champs spécifiques pour un fichier.
Les champs suivants sont renseignés pour tous les fichiers:
trashed
: indique si le fichier a été placé dans la corbeille, explicitement ou à partir d'un dossier parent placé dans la corbeille. Notez que lorsque vous utiliseztrashed
avec la méthodefiles.update
, l'état du fichier est défini, tandis que la méthodefiles.get
le récupère.explicitlyTrashed
: indique si le fichier a été placé explicitement dans la corbeille, par opposition à une suppression récursive, à 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-heure RFC 3339. Si vous utilisez la version précédente de l'API Drive V2, ce champ s'appelletrashedDate
.trashingUser
: si le fichier a été explicitement placé dans la corbeille, l'utilisateur qui l'a fait.
Récupérer un fichier de la corbeille
Pour récupérer un fichier de la corbeille, utilisez la méthode files.update
et définissez le champ trashed
sur False
. Pour supprimer un fichier Drive partagé de la corbeille, vous devez également définir le paramètre de requête supportsAllDrives
sur True
. Pour en savoir plus, consultez la section Implémenter la prise en charge des Drive 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 placé dans la corbeille:
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 retirer de la corbeille.
Vider la corbeille
Vous pouvez supprimer définitivement tous les fichiers Drive que l'utilisateur a déplacés dans la corbeille à l'aide de la méthode files.emptyTrash
. 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 une instance vide.
L'exemple de code suivant montre comment utiliser fileId
pour supprimer 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 vers 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 utilisateurs conservent l'accès au fichier, vous pouvez en transférer la propriété à un autre utilisateur avant de le supprimer.
Pour supprimer un fichier de Drive partagé, l'utilisateur doit disposer de role=organizer
sur le dossier parent. Si vous supprimez un dossier, tous les descendants appartenant à l'utilisateur sont également supprimés. Pour en savoir plus, consultez la section Autorisations.
Pour supprimer définitivement un fichier appartenant à un utilisateur sans le placer dans la corbeille, utilisez la méthode files.delete
. Pour supprimer un fichier Drive partagé, vous devez également définir le paramètre de requête supportsAllDrives
sur True
. Pour en savoir plus, consultez Implémenter la prise en charge de Drive partagé.
Si la requête aboutit, le corps de la réponse contient une instance 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 effectuer chaque opération. Pour obtenir la liste complète des rôles et des opérations autorisées par chacun d'eux, consultez la section 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 depuis la corbeille | ✔ | ✔ | ✔ | |||
Vider la corbeille | ✔ | ✔ | ||||
Supprimer définitivement un fichier ou un dossier | ✔ | ✔ | ||||
Supprimer des fichiers et des dossiers d'un Drive partagé [*] | ✔ |
Fonctionnalités
Une ressource files
contient une collection de champs capabilities
booléens utilisés pour indiquer si une action peut être effectuée sur un fichier.
Pour vérifier les fonctionnalités, appelez la méthode files.get
avec le paramètre fileId
et fields
défini sur le champ capabilities
. Pour en savoir plus sur le renvoi de champs à l'aide du paramètre fields
, consultez Renvoyer des champs spécifiques pour un fichier.
Les champs suivants sont renseignés pour tous les fichiers:
capabilities.canTrash
: indique si l'utilisateur actuel peut dé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 est "false" 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 mettre les enfants de ce dossier dans la corbeille. Cette valeur est "false" 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 est "false" lorsque l'élément n'est pas un dossier.
Limites concernant les fichiers et les 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, le seul moyen de libérer de l'espace est de supprimer définitivement des éléments ou d'utiliser un autre compte. Le déplacement de fichiers dans la corbeille ne suffit pas à libérer de l'espace.
Pour en savoir plus sur les limites concernant les fichiers et les dossiers, consultez les ressources suivantes:
- Limites applicables aux fichiers et aux dossiers dans les fichiers
- Limites applicables aux fichiers et aux dossiers dans les Drive partagés
Articles associés
- Supprimer des fichiers dans Google Drive
- Différences entre l'API Drive partagé et l'API Mon Drive
- Rôles et autorisations