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 derfiles
-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.
- Das
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.
Weitere Informationen
Als Nächstes können Sie unter anderem Folgendes tun:
Informationen zum Hochladen von Dateidaten beim Erstellen oder Aktualisieren einer Datei finden Sie unter Dateidaten hochladen.
Informationen zum Erstellen einer Datei in einem bestimmten Ordner finden Sie unter Datei in einem bestimmten Ordner erstellen.
Informationen zum Verschieben von Dateien finden Sie unter Dateien zwischen Ordnern verschieben.
Informationen zum Arbeiten mit Dateimetadaten finden Sie unter Dateimetadaten verwalten.
Informationen zum Löschen einer Datei finden Sie unter Dateien und Ordner in den Papierkorb verschieben oder löschen.