Dateien erstellen und verwalten

In diesem Leitfaden wird beschrieben, wie Sie Dateien in Google Drive mit der Google Drive API erstellen und verwalten.

Datei erstellen

Wenn Sie eine Datei in Drive erstellen möchten, die keine Metadaten oder Inhalte enthält, verwenden Sie die Methode create für die Ressource files ohne Parameter.

Wenn Sie die Datei erstellen, gibt die Methode eine files-Ressource zurück. Die Datei erhält einen kind von drive.file, einen id, einen name von „Unbenannt“ und einen mimeType von application/octet-stream. Die uploadType ist als erforderlich gekennzeichnet, wird aber standardmäßig auf media gesetzt. Sie müssen sie also nicht angeben.

Weitere Informationen zu Dateilimits in Drive finden Sie unter Datei- und Ordnerlimits.

Parameter „fields“ verwenden

Wenn Sie die Felder angeben möchten, die in der Antwort zurückgegeben werden sollen, können Sie den fields-Systemparameter mit einer beliebigen Methode der files-Ressource festlegen. Wenn Sie den Parameter fields weglassen, gibt der Server einen Standardsatz von Feldern zurück, die für die Methode spezifisch sind. Die Methode list gibt beispielsweise nur die Felder kind, id, name, mimeType und resourceKey für jede Datei zurück. Informationen zum Zurückgeben anderer Felder finden Sie unter Bestimmte Felder zurückgeben.

IDs für die Verwendung mit Ihren Dateien generieren

Mit der Methode generateIds für die Ressource files können Sie eindeutige Datei-IDs vorab generieren, die beim Erstellen oder Kopieren von Dateien und Ordnern in Drive verwendet werden können. Das kann nützlich sein, wenn Sie die Datei-IDs über Ihre App steuern möchten, anstatt sie automatisch von Drive zuweisen zu lassen.

Sie können die Anzahl der generierten IDs mit dem Abfrageparameter count festlegen. Wenn count nicht festgelegt ist, werden standardmäßig 10 zurückgegeben. Die maximale Anzahl der IDs, die Sie anfordern können, ist auf 1.000 begrenzt.

Sie können auch die space angeben, in der die IDs verwendet werden können, und die type von Artikeln, für die die IDs verwendet werden können.

Sobald eine ID generiert wurde, kann sie über das Feld id an die Methode create oder copy übergeben werden. So wird sichergestellt, dass die erstellte oder kopierte Datei die vorgegebene ID verwendet.

Wenn die Datei erfolgreich erstellt oder kopiert wurde, wird bei nachfolgenden Wiederholungsversuchen der HTTP-Statuscode 409 Conflict zurückgegeben und es werden keine doppelten Dateien erstellt.

Vorgefertigte IDs werden beim Erstellen von Google Workspace-Dateien nicht unterstützt, mit Ausnahme der application/vnd.google-apps.drive-sdk- und application/vnd.google-apps.folder-MIME-Typen. Ebenso werden Uploads, die sich auf eine Konvertierung in ein Google Workspace-Dateiformat beziehen, nicht unterstützt.

Nur Metadaten enthaltende Dateien erstellen

Dateien, die nur Metadaten enthalten, haben keinen Inhalt. Metadaten sind Daten (z. B. name, mimeType und createdTime), die die Datei beschreiben. Felder wie name sind nutzerunabhängig und werden für jeden Nutzer gleich angezeigt, während Felder wie viewedByMeTime nutzerspezifische Werte enthalten.

Ein Beispiel für eine Datei, die nur Metadaten enthält, ist ein Ordner mit dem MIME-Typ application/vnd.google-apps.folder. Weitere Informationen finden Sie unter Ordner erstellen und mit Inhalten füllen. Ein weiteres Beispiel ist eine Verknüpfung, die auf eine andere Datei in Drive mit dem MIME-Typ application/vnd.google-apps.shortcut verweist. Weitere Informationen finden Sie unter Verknüpfung zu einer Drive-Datei erstellen.

Thumbnail-Bilder verwalten

Thumbnails helfen Nutzern, Drive-Dateien zu identifizieren. Drive kann automatisch Thumbnails für gängige Dateitypen generieren. Sie können aber auch ein von Ihrer App generiertes Thumbnailbild bereitstellen. Weitere Informationen finden Sie unter Thumbnails hochladen.

Vorhandene Datei kopieren

Wenn Sie eine Datei kopieren und alle angeforderten Aktualisierungen anwenden möchten, verwenden Sie die Methode copy für die Ressource files. Verwenden Sie die Methode list, um die fileId zu finden, die Sie kopieren möchten.

Sie können Updates über die Patch-Semantik anwenden. Das bedeutet, dass Sie partielle Änderungen an einer Ressource vornehmen können. Sie müssen die Felder, die Sie in Ihrer Anfrage ändern möchten, explizit festlegen. Alle Felder, die nicht in der Anfrage enthalten sind, behalten ihre vorhandenen Werte bei. Weitere Informationen finden Sie unter Mit Teilressourcen arbeiten.

Sie können die Datei-ID der kopierten Datei mit der Methode generateIds vorab festlegen. Weitere Informationen finden Sie unter IDs für die Verwendung mit Ihren Dateien generieren.

Sie müssen einen geeigneten Drive API-Bereich verwenden, um den Aufruf zu autorisieren. Weitere Informationen zu Drive-Bereichen finden Sie unter Google Drive API-Bereiche auswählen.

Einschränkungen und Überlegungen

Beachten Sie beim Kopieren von Dateien die folgenden Einschränkungen und Überlegungen:

  • Berechtigungen:

    • Das DownloadRestrictionsMetadata-Objekt der files-Ressource bestimmt, wer die Datei kopieren kann. Weitere Informationen finden Sie unter Herunterladen, Drucken oder Kopieren von Dateien verhindern.
    • Die Feldressource capabilities.canCopy bestimmt, ob der Nutzer eine Datei kopieren kann. Weitere Informationen finden Sie unter Dateifunktionen.
    • Der Nutzer, der die Kopie erstellt hat, ist der Inhaber der kopierten Datei. Andere Freigabeeinstellungen der Quelldatei werden nicht repliziert. Wenn die Kopie in einem freigegebenen Ordner erstellt wird, werden die Berechtigungen dieses Ordners übernommen.
    • Die Eigentümerschaft einer kopierten Datei kann sich ändern und die Kopie erbt möglicherweise nicht die Freigabeeinstellungen der Originaldatei. Möglicherweise müssen diese Einstellungen zurückgesetzt werden.
  • Dateiverwaltung:

    • Einige Dateien, z. B. Drittanbieter-Verknüpfungen, können nie kopiert werden.
    • Sie können eine Datei nur in einen übergeordneten Ordner kopieren. Die Angabe mehrerer übergeordneter Elemente wird nicht unterstützt. Wenn das Feld parents nicht angegeben ist, erbt die Datei alle erkennbaren übergeordneten Elemente aus der Quelldatei.
    • Obwohl ein Ordner eine Art von Datei ist, können Sie keinen Ordner kopieren. Erstellen Sie stattdessen einen Zielordner und legen Sie das Feld parents der vorhandenen Dateien auf den Zielordner fest. Anschließend können Sie den ursprünglichen Quellordner löschen.
    • Sofern kein neuer Dateiname angegeben wird, wird mit der Methode copy eine Datei mit demselben Namen wie das Original erstellt.
    • Eine übermäßige Nutzung von copy kann dazu führen, dass Sie Ihre Drive API-Kontingentlimits überschreiten. Weitere Informationen finden Sie unter Nutzungslimits.

Als Nächstes können Sie unter anderem Folgendes tun: