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. Weitere Informationen zur Migration finden Sie unter Zur Drive API v3 migrieren. Eine vollständige Liste der Versionsunterschiede finden Sie im Vergleich der Drive API v2 und v3.
Wenn Sie Version 2 weiterhin verwenden möchten, lesen Sie die Änderung am Leitfaden zur Drive API v2. Dort erfahren Sie, wie einige Anweisungen in den Leitfäden für Version 3 für Entwickler von Version 2 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. Die Leistung wird dadurch jedoch beeinträchtigt. 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
“ und „importFormats
“ 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
mit echten Schlüssel/Wert-Paaren. 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 dann beim Aktualisieren 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 das entsprechende Ziel
mimeType
im Ressourcentext 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 unterscheiden sich in Version 3. 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
).