Die neueste Version der Google Drive API ist Version 3. Die Leistung in Version 3 ist besser, da bei Suchanfragen nur ein Teil der Felder zurückgegeben wird. Verwenden Sie die aktuelle Version, es sei denn, Sie benötigen die Sammlung v2. Wenn Sie Version 2 verwenden, sollten Sie eine Migration zu Version 3 in Betracht ziehen. Informationen zur Migration finden Sie unter Zur Drive API v3 migrieren. Eine vollständige Liste der Versionsunterschiede finden Sie im Vergleich der Drive API Version 2 und Version 3.
Wenn Sie Version 2 weiterhin verwenden möchten, lesen Sie den Änderungsantrag für den Drive API V2-Leitfaden. Dort erfahren Sie, wie einige Anweisungen in den V3-Leitfäden für V2-Entwickler geändert werden müssen.
Weitere Informationen zu den Verbesserungen der Drive API v3 finden Sie im folgenden Video, in dem Google-Entwickler das neue API-Design erläutern.
Verbesserungen bei V3
Um die Leistung zu optimieren und das API-Verhalten zu vereinfachen, bietet Version 3 folgende Verbesserungen gegenüber der vorherigen API-Version:
- Bei Suchanfragen nach Dateien und geteilten Ablagen werden standardmäßig nicht alle Ressourcen zurückgegeben, sondern nur ein Teil der häufig verwendeten Felder. Weitere Informationen zu
fields
finden Sie in den Methodenfiles.list
unddrives.list
. - Fast alle Methoden, die eine Antwort zurückgeben, erfordern jetzt den Parameter
fields
. Eine Liste aller Methoden, für diefields
erforderlich ist, finden Sie in der Drive API-Referenz. - Ressourcen mit doppelten Funktionen wurden entfernt. Beispiele:
- Die Methode
files.list
bietet die gleiche Funktionalität wie die SammlungenChildren
undParents
. Daher wurden diese aus Version 3 entfernt. - Die
Realtime.*
-Methoden wurden entfernt.
- Die Methode
- App-Daten werden standardmäßig nicht in Suchanfragen zurückgegeben. In Version 2 können Sie den Umfang
drive.appdata
festlegen. Es werden dann Anwendungsdaten aus derfiles.list
-Methode und derchanges.list
-Methode zurückgegeben. Dies führt jedoch zu einer Leistungsminderung. In Version 3 legen Sie den Umfangdrive.appdata
und den Abfrageparameterspaces=appDataFolder
fest, um Anwendungsdaten anzufordern. - Für alle Aktualisierungsvorgänge wird PATCH anstelle von PUT verwendet.
- Verwenden Sie zum Exportieren von Google-Dokumenten die Methode
files.export
. - Die Methode
changes.list
verhält sich anders. Verwenden Sie stattdessen opake 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. - Bei Aktualisierungsmethoden werden Anfragen mit nicht beschreibbaren Feldern jetzt abgelehnt.
- Die Felder
exportFormats
undimportFormats
der Version 2 in derabout
-Ressource sind Listen zulässiger Import- oder Exportformate. In Version 3 sind es MIME-Typzuordnungen möglicher Ziele für alle unterstützten Importe oder Exporte. - Die Aliasse
appdata
undappfolder
aus Version 2 heißen in Version 3 jetztappDataFolder
. - Die
properties
-Ressource wurde aus Version 3 entfernt. Die Ressourcefiles
enthält das Feldproperties
, das echte Schlüssel/Wert-Paare enthält. Das Feldproperties
enthält öffentliche Properties und das FeldappProperties
private Properties. Das Sichtbarkeitsfeld ist daher nicht erforderlich. - Im Feld
modifiedTime
der Ressourcefiles
wird das Datum der letzten Änderung der Datei angezeigt. In Version 2 konnte das FeldmodifiedDate
nur bei der Aktualisierung geändert werden, wenn Sie das FeldsetModifiedDate
festgelegt hatten. - Das Feld
viewedByMeTime
in der Ressourcefiles
wird nicht automatisch aktualisiert. - Wenn Sie Google Docs-Formate importieren möchten, legen Sie im Ressourcentext das entsprechende Ziel
mimeType
fest. In Version 2 legen Sie?convert=true
fest. - Bei Importvorgängen wird der Fehler 400 zurückgegeben, wenn das Format nicht unterstützt wird.
- Leser und Kommentatoren können Berechtigungen nicht sehen.
- Der Alias
me
für Berechtigungen wird entfernt. - Einige Funktionen waren als Teil der Anfrageressource verfügbar, sind jetzt aber als Anfrageparameter verfügbar. Beispiel:
- In Version 2 können Sie mit
children.delete
eine untergeordnete Datei aus einem übergeordneten Ordner entfernen. - In Version 3 verwenden Sie
files.update
für das untergeordnete Element mit?removeParents=parent_id
in der URL.
- In Version 2 können Sie mit
Weitere Unterschiede
Die Feld- und Parameternamen sind in Version 3 unterschiedlich. Beispiele:
- Das Attribut
name
ersetzttitle
in derfiles
-Ressource. Time
ist das Suffix für alle Datums- und Uhrzeitfelder anstelle vonDate
.- Bei Listenvorgängen wird das Feld
items
nicht zum Speichern des Ergebnissatzes verwendet. Der Ressourcentyp stellt ein Feld für die Ergebnisse bereit (z. B.files
oderchanges
).