In dieser Anleitung erfahren Sie, wie Sie von der Merchant API v1beta zu v1 migrieren, der ersten
Version für die allgemeine Verfügbarkeit. Die Version `v1` enthält mehrere Updates und einige Änderungen, für die möglicherweise Codeaktualisierungen erforderlich sind. Mit diesen Änderungen soll die API vereinfacht und die Verwaltung Ihres Merchant Center-Kontos verbessert werden.
Wichtige Unterschiede
Hier sind die wichtigsten Änderungen, die Sie bei der Migration von v1beta
zu v1 beachten sollten:
- Einmalige Registrierung von mindestens einem API-Entwickler für die Verwendung der Merchant API:
Sie müssen die Methode
registerGcpaufrufen (nur einmal für jedes Google Cloud-Projekt, das für die Authentifizierung verwendet wird), um Ihre Kontaktdaten anzugeben. So können Sie die API verwenden und Updates und Ankündigungen zur Merchant API erhalten. Sie können keinev1- oderv1alpha-API verwenden, bis dieser Schritt abgeschlossen ist. Weitere Informationen zum Registrierungsprozess finden Sie unter Registrierung. Produktnamencodierung: Die
ProductInput.nameundProduct.nameFelder unterstützen die nicht aufgefüllte base64url-Codierung (RFC 4648, Abschnitt 5). Beachten Sie diese Richtlinien:- Vor der Codierung muss der String das Format
contentLanguage~feedLabel~offerIdhaben. Die Codierung ist erforderlich , wenn Ihr Produktname Zeichen enthält, die von der Merchant API verwendet werden, oder URL-reservierte Zeichen wie:
% . + / : ~ , ( * ! ) & ? = @ # $Wenn Ihr Produktname dem
contentLanguage~feedLabel~offerIdFormat entspricht und keine Zeichen enthält, die von der Merchant API verwendet werden, oder URL-reservierte Zeichen, können Sie das einfache Format ohne Codierung verwenden.Um eine einheitliche und korrekte Analyse zu gewährleisten, empfehlen wir, für alle Produktnamen die nicht aufgefüllte base64url-Codierung zu verwenden.
- Vor der Codierung muss der String das Format
Entfernung von Steuerinformationen auf Produktebene:Die Felder
taxesundtaxCategory.Product.attributesumbenannt: Das FeldProduct.attributeswurde inProduct.productAttributesumbenannt.Entfernung von Steuerinformationen auf Produktebene:Die Felder
taxesundtaxCategorywurden aus demProduct.productAttributesObjekt entfernt. Weitere Informationen finden Sie im Google Merchant Center-Hilfeartikel zu Steuern.Änderungen am Feld „GTIN“: Das
gtinFeld imProduct.productAttributesObjekt wurde ingtinsumbenannt, um besser widerzuspiegeln, dass es mehrere Werte enthalten kann. Das FeldgtinimOrderTrackingSignals.lineItemDetailsObjekt ist jetzt einarrayund wurde ebenfalls ingtinsumbenannt.Entfernung des Felds „Channel“:Das Feld
channelwurde aus Produkten, Produkteingaben und Datenquellen entfernt. Ein neues boolesches Feld,legacyLocal, wurde eingeführt, um Produkte, die ausschließlich in Ladengeschäften verkauft werden, eindeutig zu kennzeichnen. Hinweis: Das FeldlegacyLocalist ein Hilfsfeld für die Migration und wird eingestellt, sobald Online- und lokale Marketingmethoden vollständig mit einer einzigen Produktquelle ausgerichtet werden können. Weitere Informationen finden Sie in der Tabelle im folgenden Abschnitt.Neue Felder für regionale und lokale Inventarattribute:
- Alle
RegionalInventoryFelder außername,accountundregionsind jetzt unter einem neuen Objekt namensregionalInventoryAttributeszusammengefasst. Das AttributRegionalInventory.pricebefindet sich jetzt beispielsweise unterRegionalInventory.regionalInventoryAttributes.price. - Alle
LocalInventoryFelder außername,accountundstoreCodesind jetzt unter einem neuen Objekt namenslocalInventoryAttributeszusammengefasst. Das AttributLocalInventory.pricebefindet sich jetzt beispielsweise unterLocalInventory.localInventoryAttributes.price.
- Alle
Entfernung von
customAttributesaus regionalem und lokalem Inventar: DascustomAttributesFeld wurde sowohl aus den RessourcenRegionalInventoryals auchLocalInventoryentfernt.Verbesserte Kontoerstellung:Das redundante Feld
userswurde ausCreateAndConfigureAccountRequestentfernt. Verwenden Sie das Felduserim Singular, um einen ersten Nutzer mit einem neuen Konto zu verknüpfen.Bestimmte Attributtypen wurden von Strings in Enums geändert: Einige Felder in den Ressourcen
ProductundInventorymit einer definierten kurzen Liste von Werten wurden zur besseren Datenvalidierung vom Typstringin den Typenumgeändert. Das FeldProduct.ProductAttributes.conditionist jetzt beispielsweise einenum.Entfernung der Methode zum Aktualisieren der Online-Rückgaberichtlinie: Die
onlineReturnPolicy.updateMethode wurde inv1entfernt. Erstellen Sie stattdessen eine Online-Rückgaberichtlinie mit deronlineReturnPolicy.createMethode.
Vorgehensweise
Die v1beta-Version der Merchant API wird am 28. Februar 2026 eingestellt.
Weitere Informationen zum Zeitplan für die Einstellung finden Sie im
Leitfaden zur Versionierung der Merchant API.
Der erste Schritt bei der Migration ist die einmalige Registrierung als Entwickler (siehe Als Entwickler registrieren). Sie müssen die Methode
registerGcpfür jedes Google Cloud-Projekt aufrufen, das Sie für die Authentifizierung verwenden, bevorv1-Methoden funktionieren.Unabhängig davon, wie Sie die APIs aufrufen (mit REST, gRPC oder mit Client bibliotheken), können Sie die Migration in Phasen durchführen. Das bedeutet, dass Sie Ihren Code für jede API einzeln aktualisieren und migrieren können. Sie können beispielsweise die
ProductsAPI zuv1verschieben, während dieAccountsAPI inv1betableibt. So müssen Sie nicht Ihre gesamte Integration auf einmal aktualisieren.
Detaillierte Feldänderungen
In dieser Tabelle finden Sie einen detaillierten Vergleich der Felder, die sich geändert haben
zwischen den v1beta und v1 Versionen.
| v1beta | v1 | Beschreibung |
|---|---|---|
ProductInput.name |
ProductInput.name |
Unpadded base64url encoding wird unterstützt und ist für
Produktnamen erforderlich, die Zeichen enthalten, die von der Merchant API verwendet werden, oder URL-reservierte Zeichen. |
Product.name |
Product.name |
Unpadded base64url encoding wird unterstützt und ist für
Produktnamen erforderlich, die Zeichen enthalten, die von der Merchant API verwendet werden, oder URL-reservierte Zeichen. |
Product.gtin |
Product.gtins |
Das Feld für GTINs wurde umbenannt. |
Product.taxes |
Entfernt | Das Feld taxes wurde entfernt. |
Product.taxCategory |
Entfernt | Das Feld taxCategory wurde entfernt. |
Product.channel |
Entfernt | Das Feld channel wurde entfernt. Verwenden Sie das
legacyLocal Feld für lokale Anwendungsfälle. |
Product.attributes |
Product.productAttributes |
Das Feld attributes wurde in productAttributes umbenannt.
|
availability, condition, gender, includedDestinations und excludedDestinations in Product-Feldern werden als strings (oder array von strings) dargestellt. |
Diese Felder sind jetzt enums (oder array von enums). |
Felder mit einer definierten kurzen Liste von Werten wurden vom Typ string in enum geändert.
|
price, salePrice, salePriceEffectiveDate und availability in RegionalInventory |
Verschoben nach RegionalInventory.regionalInventoryAttributes |
Diese Felder wurden unter regionalInventoryAttributes verschoben.
|
Das Feld RegionalInventory.availability ist ein string. |
RegionalInventory.regionalInventoryAttributes.availability ist jetzt ein enums. |
Der Typ von „Verfügbarkeit“ wurde von string in enum geändert.
|
price, salePrice, salePriceEffectiveDate, availability, quantity, pickupMethod, pickupSla und instoreProductLocation in LocalInventory |
Verschoben nach LocalInventory.localInventoryAttributes |
Diese Felder wurden unter localInventoryAttributes verschoben.
|
Das Feld LocalInventory.availability ist ein string. |
LocalInventory.localInventoryAttributes.availability ist jetzt ein enums. |
Der Typ von „Verfügbarkeit“ wurde von string in enum geändert.
|
LocalInventory.customAttributes |
Entfernt | Benutzerdefinierte Attribute werden für lokales Inventar nicht mehr unterstützt. |
RegionalInventory.customAttributes |
Entfernt | Benutzerdefinierte Attribute werden für regionales Inventar nicht mehr unterstützt. |
ProductInput.channel |
Entfernt | Das Feld channel wurde entfernt. Verwenden Sie das
legacyLocal Feld für lokale Anwendungsfälle. |
DataSource.channel |
Entfernt | Das Feld channel wurde entfernt. Verwenden Sie das
legacyLocal Feld für lokale Anwendungsfälle. |
| Nicht verfügbar | ProductInput.legacyLocal |
Ein neues boolesches Feld, um anzugeben, dass ein Produkt nur auf lokale Marketingmethoden ausgerichtet werden kann. Die Produktressourcen-ID hat das Präfix „local~“. |
| Nicht verfügbar | Product.legacyLocal |
Ein neues boolesches Feld, um anzugeben, dass ein Produkt nur in Ladengeschäften verkauft wird und nicht online gekauft werden kann. |
| Nicht verfügbar | DataSource.legacyLocal |
Ein neues boolesches Feld, um anzugeben, dass eine Datenquelle Produkte enthält, die nur in Ladengeschäften verkauft werden. |
OrderTrackingSignals.LineItemDetails.gtin |
OrderTrackingSignals.LineItemDetails.gtins |
Das Feld gtin wurde in gtins umbenannt und
ist jetzt ein Array von Strings (anstelle eines Strings). |
CreateAndConfigureAccountRequest.users |
Entfernt | Das Feld users wurde entfernt. Verwenden Sie das
user Feld, um den ersten Administrator zum Konto hinzuzufügen. |