Dateien und Ordner in den Papierkorb verschieben oder löschen

Sie können Google Drive-Dateien und -Ordner sowohl aus „Meine Ablage“ als auch aus geteilten Ablagen entfernen. Dazu haben Sie zwei Möglichkeiten: Sie können die Datei in den Papierkorb verschieben oder löschen.

Sie können Dateien und Ordner in den Papierkorb verschieben und dann innerhalb von 30 Tagen wiederherstellen. Wenn Sie Dateien und Ordner löschen, werden sie endgültig aus Drive entfernt. Wenn Sie mehrere Dateien oder Ordner gleichzeitig in den Papierkorb verschieben, wiederherstellen oder endgültig löschen, kann es einige Zeit dauern, bis die Änderungen angezeigt werden.

In dieser Anleitung wird beschrieben, wie Sie Dateien in Drive entsorgen können.

Papierkorb

Wenn Sie Drive-Dateien entfernen möchten, können Sie sie in den Papierkorb verschieben. Dateien im Papierkorb werden nach 30 Tagen automatisch gelöscht. Vor Ablauf der 30 Tage können Sie die Dateien im Papierkorb wiederherstellen.

Nur der Dateieigentümer kann eine Datei in den Papierkorb verschieben. Andere Nutzer können Dateien im Papierkorb des Eigentümers nicht sehen. Wenn Sie versuchen, eine Datei in den Papierkorb zu verschieben, die Ihnen nicht gehört, erhalten Sie den Fehler insufficientFilePermissions. Weitere Informationen finden Sie unter Berechtigungen.

Wenn Sie bestätigen möchten, dass Sie der Dateiinhaber sind, rufen Sie die Methode files.get auf, wobei der Parameter fileId und der Parameter fields auf das boolesche Feld ownedByMe gesetzt sind. Das Feld ownedByMe ist für Dateien in geteilten Ablagen nicht ausgefüllt, da sie der geteilten Ablage und nicht einzelnen Nutzern gehören. Weitere Informationen zum Zurückgeben von Feldern mit dem Parameter fields finden Sie unter Bestimmte Felder für eine Datei zurückgeben.

Wenn Sie nicht der Dateieigentümer sind, aber trotzdem eine Kopie der gelöschten Datei benötigen, haben Sie folgende Möglichkeiten:

  • Erstellen Sie eine Kopie der Datei.
  • Bitten Sie den Eigentümer, die Datei aus dem Papierkorb wiederherzustellen.

Dateien in den Papierkorb verschieben

Verwenden Sie zum Verschieben einer Datei in den Papierkorb die Methode files.update und legen Sie das Feld trashed auf True fest. Wenn Sie eine Datei aus einer geteilten Ablage in den Papierkorb verschieben möchten, müssen Sie auch den Abfrageparameter supportsAllDrives auf True setzen. Weitere Informationen finden Sie unter Unterstützung für geteilte Ablagen implementieren.

Bei erfolgreicher Ausführung enthält der Antworttext eine Instanz der files-Ressource.

Das folgende Codebeispiel zeigt, wie Sie mit fileId eine Datei als gelöscht markieren:

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;

Ersetzen Sie FILE_ID durch die fileId der Datei, die Sie in den Papierkorb verschieben möchten.

Eigenschaften einer gelöschten Datei ermitteln

Wenn eine Datei in den Papierkorb verschoben wird, können Sie zusätzliche files-Attribute abrufen. Sie können die Methode files.get verwenden und die folgenden Felder in den Parameter fields einfügen. Weitere Informationen finden Sie unter Bestimmte Felder für eine Datei zurückgeben.

Die folgenden Felder werden für alle Dateien ausgefüllt:

  • trashed: Gibt an, ob die Datei in den Papierkorb verschoben wurde, entweder explizit oder über einen übergeordneten Ordner, der in den Papierkorb verschoben wurde. Wenn Sie trashed mit der Methode files.update verwenden, wird der Status der Datei festgelegt. Mit der Methode files.get wird der Status der Datei abgerufen.
  • explicitlyTrashed: Gibt an, ob die Datei explizit in den Papierkorb verschoben wurde oder rekursiv aus einem übergeordneten Ordner.

Die folgenden Felder werden nur für Dateien in einer geteilten Ablage ausgefüllt:

  • trashedTime: Die Zeit, zu der das Element in den Papierkorb verschoben wurde, im RFC 3339-Datums-/Uhrzeitformat. Wenn Sie die vorherige Version der Drive API v2 verwenden, heißt dieses Feld trashedDate.
  • trashingUser: Wenn die Datei explizit in den Papierkorb verschoben wurde, der Nutzer, der sie in den Papierkorb verschoben hat.

Dateien aus dem Papierkorb wiederherstellen

Verwenden Sie die Methode files.update, um eine Datei aus dem Papierkorb wiederherzustellen, und legen Sie das Feld trashed auf False fest. Wenn Sie eine Datei aus dem Papierkorb einer geteilten Ablage wiederherstellen möchten, müssen Sie auch den Abfrageparameter supportsAllDrives auf True setzen. Weitere Informationen finden Sie unter Unterstützung für geteilte Ablagen implementieren.

Bei erfolgreicher Ausführung enthält der Antworttext eine Instanz der files-Ressource.

Das folgende Codebeispiel zeigt, wie Sie mit fileId die Datei als „nicht im Papierkorb“ markieren:

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;

Ersetzen Sie FILE_ID durch die fileId der Datei, die Sie aus dem Papierkorb wiederherstellen möchten.

Papierkorb leeren

Sie können alle Drive-Dateien, die der Nutzer in den Papierkorb verschoben hat, mit der Methode files.emptyTrash endgültig löschen. Wenn Sie den Papierkorb einer geteilten Ablage leeren möchten, müssen Sie den Abfrageparameter driveId auf die ID der geteilten Ablage festlegen.

Bei Erfolg enthält der Antworttext eine leere Instanz.

Das folgende Codebeispiel zeigt, wie Sie mit fileId alle Dateien im Papierkorb löschen:

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

Löschen

Sie können eine Drive-Datei endgültig löschen, ohne sie in den Papierkorb zu verschieben. Wenn Sie eine Datei löschen, verliert auch jeder, für den Sie die Datei freigegeben haben, den Zugriff darauf. Wenn Sie möchten, dass andere weiterhin auf die Datei zugreifen können, können Sie die Eigentümerschaft vor dem Löschen übertragen.

Wenn ein Nutzer eine Datei in einer geteilten Ablage löschen möchte, benötigt er role=organizer für den übergeordneten Ordner. Wenn Sie einen Ordner löschen, werden auch alle untergeordneten Elemente des Nutzers gelöscht. Weitere Informationen finden Sie unter Berechtigungen.

Wenn Sie eine Datei, die einem Nutzer gehört, endgültig löschen möchten, ohne sie in den Papierkorb zu verschieben, verwenden Sie die Methode files.delete. Wenn Sie eine Datei auf einem freigegebenen Laufwerk löschen möchten, müssen Sie den Abfrageparameter supportsAllDrives auf True setzen. Weitere Informationen finden Sie unter Unterstützung für geteilte Ablagen implementieren.

Bei erfolgreicher Ausführung enthält der Antworttext eine leere Instanz.

Das folgende Codebeispiel zeigt, wie Sie die Datei mit fileId löschen:

Python

response = drive_service.files().delete(fileId="FILE_ID").execute()

Node.js

 const response = await drive_service.files.delete({
      fileId: 'FILE_ID'
    });
    return response;

Ersetzen Sie FILE_ID durch den fileId der Datei, die Sie löschen möchten.

Berechtigungen

In der folgenden Tabelle sind die Rollenberechtigungen aufgeführt, die für die einzelnen Vorgänge erforderlich sind. Eine vollständige Liste der Rollen und der jeweils zulässigen Vorgänge finden Sie unter Rollen und Berechtigungen.

Zulässiger Vorgang owner organizer fileOrganizer writer commenter reader
Dateien und Ordner in den Papierkorb verschieben
Dateien und Ordner aus dem Papierkorb wiederherstellen
Papierkorb leeren
Dateien oder Ordner endgültig löschen
Dateien und Ordner in einer geteilten Ablage löschen [*]

Leistungsspektrum

Eine files-Ressource enthält eine Sammlung von booleschen capabilities-Feldern, die angeben, ob eine Aktion für eine Datei ausgeführt werden kann.

Rufen Sie zum Prüfen der Funktionen die Methode files.get auf, wobei der Parameter fileId und der Parameter fields auf das Feld capabilities gesetzt sind. Weitere Informationen zum Zurückgeben von Feldern mit dem Parameter fields finden Sie unter Bestimmte Felder für eine Datei zurückgeben.

Die folgenden Felder werden für alle Dateien ausgefüllt:

  • capabilities.canTrash: Gibt an, ob der aktuelle Nutzer diese Datei in den Papierkorb verschieben kann.
  • capabilities.canUntrash: Gibt an, ob der aktuelle Nutzer diese Datei aus dem Papierkorb wiederherstellen kann.
  • capabilities.canDelete: Gibt an, ob der aktuelle Nutzer diese Datei löschen kann.
  • capabilities.canRemoveChildren: Gibt an, ob der aktuelle Nutzer untergeordnete Elemente aus diesem Ordner entfernen kann. Dieser Wert ist „false“, wenn das Element kein Ordner ist.

Die folgenden Felder werden nur für Dateien in einer geteilten Ablage ausgefüllt:

  • capabilities.canTrashChildren: Gibt an, ob der aktuelle Nutzer untergeordnete Elemente dieses Ordners in den Papierkorb verschieben kann. Dieser Wert ist „false“, wenn das Element kein Ordner ist.
  • capabilities.canDeleteChildren: Gibt an, ob der aktuelle Nutzer untergeordnete Elemente dieses Ordners löschen kann. Dieser Wert ist „false“, wenn das Element kein Ordner ist.

Beschränkungen für Dateien und Ordner

Für Drive-Dateien und ‑Ordner sowie für Ordner in geteilten Ablagen gelten bestimmte Speicherplatzbeschränkungen.

Wenn das Elementlimit erreicht ist, können Sie nur dann mehr Speicherplatz schaffen, wenn Sie Elemente endgültig löschen oder ein anderes Konto verwenden. Das Verschieben von Dateien in den Papierkorb reicht nicht aus, um Speicherplatz freizugeben.

Weitere Informationen zu Datei- und Ordnerlimits finden Sie hier: