Die neueste Version der Google Drive API ist Version 3. Die Leistung in v3 ist besser, da bei Suchanfragen nur eine Teilmenge von Feldern zurückgegeben wird. Verwenden Sie die aktuelle Version, es sei denn, Sie benötigen die v2-Sammlung. Wenn Sie v2 verwenden, sollten Sie die Migration zu v3 in Betracht ziehen. Informationen zur Migration finden Sie unter Zur Drive API Version 3 migrieren. Eine vollständige Liste der Versionsunterschiede finden Sie in der Vergleichsreferenz für Drive API Version 2 und Version 3.
Wenn Sie Version 2 weiterhin verwenden möchten, lesen Sie in der Änderungsvereinbarung Guide to Drive API v2 (Leitfaden zur Drive API Version 2) nach, wie einige Anweisungen in den v3-Leitfäden für Entwickler von Version 2 geändert werden müssen.
Weitere Informationen zu den Verbesserungen der Drive API Version 3 finden Sie im folgenden Video, in dem Google-Entwickler das neue API-Design besprechen.
V3-Verbesserungen
Version 3 bietet im Vergleich zur vorherigen API-Version folgende Verbesserungen, um die Leistung zu optimieren und die Komplexität des API-Verhaltens zu reduzieren:
- Bei der Suche nach Dateien und geteilten Ablagen werden standardmäßig keine vollständigen Ressourcen zurückgegeben. Es wird nur ein Teil der häufig verwendeten Felder zurückgegeben. Weitere Informationen zu
fields
finden Sie in der Methodefiles.list
und in der Methodedrives.list
. - Fast alle Methoden, die eine Antwort zurückgeben, erfordern jetzt den Parameter
fields
. Eine Liste aller Methoden, diefields
erfordern, finden Sie in der Drive API-Referenz. - Ressourcen mit doppelten Funktionen wurden entfernt. Hier einige Beispiele:
- Die Methode
files.list
bietet dieselben Funktionen wie die SammlungenChildren
undParents
und wurden daher aus Version 3 entfernt. - Die
Realtime.*
-Methoden wurden entfernt.
- Die Methode
- App-Daten werden bei Suchvorgängen nicht standardmäßig zurückgegeben. In Version 2 können Sie den Bereich
drive.appdata
festlegen. Danach werden Anwendungsdaten von der Methodefiles.list
und der Methodechanges.list
zurückgegeben, die Leistung wird jedoch verlangsamt. In Version 3 legen Sie den Bereichdrive.appdata
und den Abfrageparameterspaces=appDataFolder
fest, um Anwendungsdaten anzufordern. - Alle Aktualisierungsvorgänge verwenden PATCH anstelle von PUT.
- Verwenden Sie zum Exportieren von Google-Dokumenten die Methode
files.export
. - Das Verhalten der Methode
changes.list
ist anders. Verwenden Sie anstelle von Änderungs-IDs intransparente Seitentokens. Rufen Sie zuerst die Methodechanges.getStartPageToken
für den Anfangswert auf, um die Änderungssammlung abzufragen. Bei nachfolgenden Abfragen gibt die Methodechanges.list
den WertnewStartPageToken
zurück. - Aktualisierungsmethoden lehnen jetzt Anfragen ab, die nicht beschreibbare Felder enthalten.
- Die V2-Felder
exportFormats
undimportFormats
in der Ressourceabout
sind Listen zulässiger Import- und Exportformate. In Version 3 sind dies MIME-Typ-Zuordnungen möglicher Ziele für alle unterstützten Importe oder Exporte. - Die Aliasse
appdata
undappfolder
der Version 2 in Version 3 heißen jetztappDataFolder
. - Die Ressource
properties
wurde aus v3 entfernt. Die Ressourcefiles
enthält das Feldproperties
, das echte Schlüssel/Wert-Paare enthält. Das Feldproperties
enthält öffentliche Attribute und das FeldappProperties
enthält private Attribute. Daher wird das Feld für die Sichtbarkeit nicht benötigt. - Das Feld
modifiedTime
in der Ressourcefiles
wird aktualisiert, wann die Datei zuletzt von einem Nutzer geändert wurde. In Version 2 konnte das FeldmodifiedDate
nur bei einer Aktualisierung geändert werden, wenn Sie einen Wert für das FeldsetModifiedDate
festgelegt haben. - Das Feld
viewedByMeTime
in der Ressourcefiles
wird nicht automatisch aktualisiert. - Zum Importieren von Google Docs-Formaten legen Sie das entsprechende Ziel-
mimeType
im Ressourcentext fest. In Version 2 haben Sie?convert=true
festgelegt. - Bei Importvorgängen wird der Fehler 400 zurückgegeben, wenn das Format nicht unterstützt wird.
- Leser und Kommentatoren können keine Berechtigungen ansehen.
- Der Alias
me
für Berechtigungen wurde entfernt. - Einige Funktionen waren als Teil der Anfrageressource verfügbar, sind jedoch stattdessen als Anfrageparameter verfügbar. Beispiel:
- In Version 2 können Sie
children.delete
verwenden, um eine untergeordnete Datei aus einem übergeordneten Ordner zu entfernen. - In Version 3 verwenden Sie
files.update
für die untergeordnete Datei mit?removeParents=parent_id
in der URL.
- In Version 2 können Sie
Weitere Unterschiede
Felder und Parameternamen unterscheiden sich in Version 3. Beispiele:
- Das Attribut
name
ersetzttitle
in der Ressourcefiles
. Time
ist das Suffix für alle Datums- und Uhrzeitfelder anstelle vonDate
.- Bei Listenvorgängen wird die Ergebnismenge nicht im Feld
items
verwendet. Der Ressourcentyp stellt ein Feld für die Ergebnisse bereit, z. B.files
oderchanges
.