Vergleich der Drive APIs Version 2 und Version 3
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Die aktuelle Version der Google Drive API ist v3. Die Leistung in Version 3 ist besser, da bei Suchvorgängen nur eine Teilmenge von Feldern zurückgegeben wird. Verwenden Sie die aktuelle Version, sofern Sie die v2-Sammlung nicht benötigen. 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 Unterschiede zwischen den Versionen finden Sie in der Referenz zum Vergleich von Drive API v2 und v3.
Wenn Sie Version 2 weiterhin verwenden möchten, lesen Sie den Leitfaden zur Drive API v2, um zu erfahren, wie einige Anleitungen in den Version 3-Leitfäden 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.
V3-Verbesserungen
Um die Leistung zu optimieren und die Komplexität des API-Verhaltens zu verringern, bietet Version 3 die folgenden Verbesserungen gegenüber der vorherigen API-Version:
- Bei der Suche nach Dateien und geteilten Ablagen werden standardmäßig keine vollständigen Ressourcen zurückgegeben, sondern nur eine Teilmenge häufig verwendeter Felder. Weitere Informationen zu
fields
finden Sie in den Artikeln zur files.list
-Methode und zur drives.list
-Methode.
- Für fast alle Methoden, die eine Antwort zurückgeben, ist jetzt der Parameter
fields
erforderlich. Eine Liste aller Methoden, für die fields
erforderlich ist, finden Sie in der
Drive API-Referenz.
- Ressourcen mit doppelten Funktionen wurden entfernt. Beispiele:
- Die Methode
files.list
bietet dieselbe Funktionalität wie die Sammlungen Children
und Parents
. Daher werden sie aus Version 3 entfernt.
- Die
Realtime.*
-Methoden wurden entfernt.
- App-Daten werden standardmäßig nicht in Suchergebnissen zurückgegeben. In Version 2 können Sie den Bereich
drive.appdata
festlegen. Die Methode gibt Anwendungsdaten aus der Methode files.list
und der Methode changes.list
zurück, was jedoch die Leistung beeinträchtigt. In Version 3 legen Sie den Bereich drive.appdata
fest und legen außerdem den Abfrageparameter spaces=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
.
- Das Verhalten der Methode
changes.list
ist anders. Verwenden Sie anstelle von Änderungs-IDs undurchsichtige Seitentokens. Rufen Sie zuerst die Methode changes.getStartPageToken
für den Anfangswert auf, um die Sammlung von Änderungen abzufragen. Bei nachfolgenden Abfragen gibt die Methode changes.list
den Wert newStartPageToken
zurück.
- Aktualisierungsmethoden lehnen jetzt Anfragen ab, in denen nicht beschreibbare Felder angegeben sind.
- Die Felder
exportFormats
und importFormats
der Version 2 in der Ressource about
sind Listen zulässiger Import- oder Exportformate. In Version 3 sind das MIME-Typ-Zuordnungen von möglichen Zielen zu allen unterstützten Importen oder Exporten.
- Die v2-Aliasse
appdata
und appfolder
sind in v3 jetzt appDataFolder
.
- Die Ressource
properties
wird aus Version 3 entfernt. Die Ressource files
hat das Feld properties
, das echte Schlüssel/Wert-Paare enthält. Das Feld properties
enthält öffentliche Attribute und das Feld appProperties
private Attribute. Das Sichtbarkeitsfeld ist daher nicht erforderlich.
- Das Feld
modifiedTime
in der Ressource files
wird aktualisiert, wenn die Datei zuletzt geändert wurde. In Version 2 war das Feld modifiedDate
nur bei der Aktualisierung änderbar, wenn Sie das Feld setModifiedDate
festgelegt haben.
- Das Feld
viewedByMeTime
in der Ressource files
wird nicht automatisch aktualisiert.
- Wenn Sie Google Docs-Formate importieren möchten, legen Sie das entsprechende Ziel-
mimeType
im Ressourcen-Body fest. In Version 2 legen Sie ?convert=true
fest.
- Importvorgänge geben einen 400-Fehler zurück, wenn das Format nicht unterstützt wird.
- Leser und Kommentatoren können keine Berechtigungen sehen.
- Der Alias
me
für Berechtigungen wird entfernt.
- Einige Funktionen waren als Teil der Anforderungsressource verfügbar, sind aber stattdessen als Anforderungsparameter 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.
Weitere Unterschiede
Felder und Parameternamen sind in Version 3 unterschiedlich. Beispiele:
- Das Attribut
name
ersetzt title
in der Ressource files
.
Time
ist das Suffix für alle Datums- und Zeitfelder anstelle von Date
.
- Bei Listenoperationen wird das Feld
items
nicht für die Ergebnismenge verwendet. Der Ressourcentyp enthält ein Feld für die Ergebnisse (z. B. files
oder changes
).
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-08-29 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-08-29 (UTC)."],[],[],null,["# Drive API v2 and v3 comparison guide\n\nThe latest Google Drive API version is v3. The performance in v3 is better because\nsearches only return a subset of fields. Use the current version unless you need\nthe [v2](/workspace/drive/api/v2/reference) collection. If you're using v2, consider\nmigrating to v3. To migrate, see [Migrate to Drive API v3](/workspace/drive/api/guides/migrate-to-v3). For a complete list of version differences, see\nthe [Drive API v2 and v3 comparison\nreference](/workspace/drive/api/guides/v2-to-v3-reference).\n\nIf you want to continue to use v2, see the [Guide to Drive API v2](/workspace/drive/api/guides/v2-guide) amendment to learn how some instructions in the v3\nguides must be amended for v2 developers.\n\nTo learn more about Drive API v3 improvements, you can watch the\nfollowing video by Google engineers discussing the new API design. \n\nV3 improvements\n---------------\n\nTo optimize performance and reduce API behavior complexity, v3 provides these\nimprovements over the previous API version:\n\n- Searches for files and shared drives don't return full resources by default, only a subset of commonly used fields gets returned. For more details on `fields`, see the [`files.list`](/workspace/drive/api/v3/reference/files/list) method and the [`drives.list`](/workspace/drive/api/v3/reference/drives/list) method.\n- Almost all methods that return a response now require the `fields` parameter. For a list of all methods requiring `fields`, see the [Drive API reference](/workspace/drive/api/v3/reference).\n- Resources that have duplicate capabilities were removed. Some examples:\n - The `files.list` method accomplishes the same functionality as the `Children` and `Parents` collections, so they're removed from v3.\n - The `Realtime.*` methods have been removed.\n- App Data isn't returned by default in searches. In v2, you can set the `drive.appdata` scope, and it returns application data from the `files.list` method and the [`changes.list`](/workspace/drive/api/v2/reference/changes/list) method, but it slows performance. In v3, you set the `drive.appdata` scope, and also set the query parameter `spaces=appDataFolder` to request application data.\n- All update operations use PATCH instead of PUT.\n- To export Google Documents, use the [`files.export`](/workspace/drive/api/v2/reference/files/export) method.\n- The `changes.list` method behavior is different. Instead of change IDs, use opaque page tokens. To poll the change collection, first call the [`changes.getStartPageToken`](/workspace/drive/api/v2/reference/changes/getStartPageToken) method for the initial value. For subsequent queries, the `changes.list` method returns the `newStartPageToken` value.\n- Update methods now reject requests that specify non-writable fields.\n- The v2 `exportFormats` and `importFormats` fields in the [`about`](/workspace/drive/api/reference/rest/v3/about) resource are lists of allowable import or export formats. In v3, they're MIME type maps of possible targets to all supported imports or exports.\n- The v2 `appdata` and `appfolder` aliases are now `appDataFolder` in v3.\n- The `properties` resource is removed from v3. The [`files`](/workspace/drive/api/v3/reference/files) resource has the `properties` field that contains true key-value pairs. The `properties` field contains public properties, and the `appProperties` field contains private properties, so the visibility field isn't needed.\n- The `modifiedTime` field in the `files` resource updates the last time anyone modified the file. In v2, the `modifiedDate` field was only mutable on update if you set the `setModifiedDate` field.\n- The `viewedByMeTime` field in the `files` resource doesn't automatically update.\n- To import Google Docs formats, you set the appropriate target `mimeType` in the resource body. In v2, you set `?convert=true`.\n- Import operations return a 400 error if the format isn't supported.\n- Readers and commenters can't view permissions.\n- The `me` alias for permissions is removed.\n- Some functionality was available as part of the request resource but is instead available as a request parameter. For example:\n - In v2, you can use `children.delete` to remove a child file from a parent folder.\n - In v3, you use`files.update` on the child with `?removeParents=parent_id` in the URL.\n\nOther differences\n-----------------\n\nFields and parameter names are different in v3. Some examples include:\n\n- The `name` property replaces `title` in the `files` resource.\n- `Time` is the suffix for all date and time fields instead of `Date`.\n- List operations don't use the `items` field to contain the result set. The resource type provides a field for the results (such as `files` or `changes`)."]]