Häufig gestellte Fragen

In diesem Abschnitt werden häufig gestellte Fragen zur Entwicklerregistrierung für die Merchant API beantwortet.

Allgemeine Registrierung

Häufig gestellte Fragen zum Registrierungsprozess:

Ist die Entwicklerregistrierung erforderlich, um die Merchant API zu verwenden?

Ja. Sie müssen Ihre Kontaktdaten als Entwickler registrieren, damit Google Ihnen wichtige API-spezifische Updates wie Servicemitteilungen und Informationen zu neuen Funktionen senden kann.

Wenn Sie die Merchant API nur testen möchten, können Sie Tools wie Google OAuth Playground und API Explorer verwenden, für die keine Registrierung erforderlich ist.

Wie oft muss ich mich registrieren?

Die Registrierung ist eine einmalige Einrichtung für jedes Google Cloud-Projekt. Unabhängig davon, ob Sie mit mehreren Händlerkonten arbeiten oder nicht, führen Sie die Registrierung nur einmal durch. Sie gilt für alle Nutzer und Dienstkonten im verknüpften Google Cloud-Projekt.

Sobald ein Google Cloud-Projekt erfolgreich registriert wurde, bleibt die Verknüpfung aktiv, sofern sie nicht explizit durch Aufrufen der Methode unregisterGcp entfernt wird. Sie können keine freigegebenen Projekte registrieren, die Google gehören, z. B. den APIs Explorer oder den OAuth Playground.

Welche E-Mail-Adresse soll ich als Entwicklerkontakt angeben?

Wir empfehlen, die geschäftliche E-Mail-Adresse einer Person zu verwenden. Alternativ können Sie allgemeine Gruppenaliasse verwenden. E-Mail-Adressen von Dienstkonten können nicht verwendet werden, da die Mitteilungen für menschliche Empfänger bestimmt sind. Google sendet wichtige API-spezifische Updates, z. B. Servicemitteilungen und Informationen zu neuen Funktionen.

Wenn die E‑Mail-Adresse zu einem bestehenden Nutzer im Merchant Center-Konto gehört, wird ihm automatisch die Rolle API_DEVELOPER zugewiesen. Andernfalls wird eine Einladung an diese Adresse gesendet.

Das Feld für die E‑Mail-Adresse des Entwicklers ist in der Methode registerGcp optional. Wenn Sie bei der Registrierung keinen Wert für dieses Feld angeben, müssen Sie einen Nutzer mit der Rolle API_DEVELOPER entweder in der Merchant Center-Benutzeroberfläche oder durch Aufrufen der Methode accounts.users.create erstellen.

Muss die E-Mail-Adresse des Entwicklerkontakts ein Google-Konto sein?

Ja. Wenn Sie eine vorhandene E-Mail-Adresse verwenden möchten, die nicht von Google stammt, können Sie sie mit einem Google-Konto verknüpfen. Wählen Sie dazu bei der Registrierung ein Google-Konto erstellen die Option Vorhandene E-Mail-Adresse verwenden aus. Sie können keine E-Mail-Adressen von Dienstkonten verwenden, da Dienstkonten keine E-Mails empfangen können.

Wie führe ich die Authentifizierung und Autorisierung für den Registrierungsaufruf durch?

Je nach Anwendungsfall stehen zwei verschiedene Authentifizierungsszenarien für die Authentifizierung und Autorisierung des Registrierungsaufrufs zur Verfügung:

  • OAuth 2.0: für Drittanbieter oder Agenturen, die mehrere Händlerkonten verwalten
  • Dienstkonten: für den Zugriff auf Ihr eigenes Merchant Center-Konto

Alt-Text für Barrierefreiheit

Das obige Diagramm zeigt die beiden Authentifizierungs- und Autorisierungsabläufe für den Registrierungsaufruf. Sie haben folgende Optionen zur Auswahl:

  • OAuth mit einer E‑Mail-Adresse wie account@email.com verwenden, die mit einem Google-Konto verknüpft ist
  • Verwenden eines Dienstkontos wie sa@project.iam.gserviceaccount.com

Wenn Sie sich für OAuth entscheiden:

  • OAuth-Anmeldedaten in Ihrem Google Cloud-Projekt für Ihre E-Mail-Adresse erstellen
  • Prüfen Sie, ob die autorisierende E-Mail-Adresse in Ihrem Merchant Center vorhanden ist und den Zugriffstyp ADMIN hat.

Wenn Sie sich für ein Dienstkonto entscheiden, gehen Sie so vor:

  • Prüfen Sie, ob das Dienstkonto in Ihrem Google Cloud-Projekt vorhanden ist.
  • Prüfen Sie, ob die mit dem Dienstkonto verknüpfte E-Mail-Adresse in Ihrem Merchant Center-Konto vorhanden ist und den Zugriffstyp ADMIN hat.

Führen Sie den Registrierungsaufruf im Sicherheitskontext der authentifizierenden Identität aus. Verwenden Sie dazu direkte API-Aufrufe oder Clientbibliotheken. Geben Sie eine E‑Mail-Adresse für den Entwicklerkontakt an, z. B. developer@email.com.

Wenn der Registrierungsaufruf erfolgreich ist, ist in Ihrem Merchant Center ein Nutzer mit der angegebenen Entwickler-E-Mail-Adresse und der Rolle API_DEVELOPER vorhanden. Sie erhalten als Antwort eine DeveloperRegistration-Ressource.

Was ist der Unterschied zwischen der E-Mail-Adresse für die Authentifizierung und der E-Mail-Adresse für den Entwicklerkontakt?

Die beiden E-Mail-Adressen haben unterschiedliche Zwecke innerhalb des Merchant API-Ökosystems:

  • E-Mail-Adresse für die Authentifizierung: In der Regel verwenden Sie eine E-Mail-Adresse, die mit Ihrem Google-Konto oder einem Dienstkonto verknüpft ist, als Identität, um Anfragen an die Merchant API zu autorisieren, sofern Folgendes zutrifft:
    • Das Konto ist in Ihrem Merchant Center-Konto vorhanden und hat die Rolle ADMIN.
    • In einem Google Cloud-Projekt, für das die Merchant API aktiviert ist, wird der OAuth-Client oder das Dienstkonto gehostet, das mit der E-Mail-Adresse verknüpft ist, mit der die API-Aufrufe autorisiert werden.
  • E‑Mail-Adresse des Entwicklers: Die E‑Mail-Adresse des Entwicklers muss ebenfalls mit einem Google-Konto verknüpft sein. Sie dient als primärer Kontakt für wichtige Servicemitteilungen und API-Updates von Google. Sie kann einem Nutzer oder einer Nutzergruppe gehören. Standardmäßig erhält es die Rolle API developer im Merchant Center.

Muss ich die Einladung an die E‑Mail-Adresse des Entwicklerkontakts annehmen?

Ja. Der Empfänger der von Ihnen angegebenen E‑Mail-Adresse für Entwicklerkontakte hat 14 Tage Zeit, die Einladung anzunehmen. Die Registrierung ist erst abgeschlossen, wenn sie die Einladung angenommen haben. Sie können jedoch während dieser Zeit API-Aufrufe ausführen.

Wenn die Einladung nicht innerhalb des angegebenen Zeitraums angenommen wird, läuft der Einladungslink ab. Sie können keine Merchant API-Aufrufe mehr ausführen und müssen die Registrierung neu starten.

Konto- und Projektverwaltung

Häufig gestellte Fragen zur Konto- und Projektverwaltung:

Ich arbeite mit mehreren Merchant Center-Konten. Muss ich jedes Merchant Center-Konto, das ich mit der Merchant API verwenden möchte, registrieren?

Nein. Wenn Sie ein Drittanbieterentwickler oder eine Agentur sind, die mehrere Händlerkonten verwaltet, registrieren Sie Ihr Google Cloud-Projekt mit Ihrem eigenen primären Merchant Center-Konto und nicht mit den Konten der einzelnen Händler. So vertreten Sie den Entwickler bei allen API-Vorgängen, die Sie für Ihre Händler ausführen.

Ich arbeite mit mehreren Merchant Center-Konten. Wie wähle ich mein primäres Merchant Center-Konto aus?

Welches primäre Konto Sie verwenden, hängt von Ihrem Unternehmenstyp ab:

  • Marktplätze mit einem bestehenden erweiterten Konto:Wenn Ihr Unternehmen als Marktplatz fungiert und bereits ein erweitertes Konto für die gesamte Plattform hat, verwenden Sie diese Konto-ID als primäres Merchant Center-Konto.
  • Preisvergleichsportale: Wenn Sie ein Preisvergleichsportal sind, verwenden Sie Ihre eindeutige Konto-ID oder Konto-ID der Preisvergleichsportal-Gruppe.
  • Agenturen, Entwickler und andere Drittanbieter: Wenn Sie ein Drittanbieterunternehmen wie eine Agentur oder ein Drittanbieterentwickler sind, das mehrere Händlerkonten verwaltet und keine einzelne Merchant Center-ID hat, die Ihr Unternehmen repräsentiert, sollten Sie ein neues primäres Merchant Center-Konto erstellen und beantragen, es in ein erweitertes Konto umzuwandeln.

Sobald Ihr Google Cloud-Projekt in Ihrem primären Merchant Center-Konto registriert ist, können Sie damit alle anderen Merchant Center-Konten verwalten, auf die Sie Zugriff haben, ohne diese Konten einzeln registrieren zu müssen.

Ich verwende mehrere Google Cloud-Projekte. Muss ich jedes Gerät registrieren?

Ja. Da beim Registrierungsprozess das aufrufende Google Cloud-Projekt verknüpft wird, müssen Sie den Aufruf registerGcp für jedes Google Cloud-Projekt ausführen, das Sie für API-Aufrufe verwenden.

Ein einzelnes Google Cloud-Projekt kann jeweils nur für genau ein Merchant Center-Konto registriert werden. Ein einzelnes Merchant Center-Konto kann jedoch mehrere Google Cloud-Projekte haben, die darauf registriert sind. Ebenso können Sie dieselbe Entwickler-E-Mail-Adresse für mehrere Registrierungen in mehreren Google Cloud-Projekten oder mehreren Merchant Centers verwenden.

Was passiert, wenn ich ein Google Cloud-Projekt mit mehreren Merchant Center-Konten registriere?

Wenn Sie versuchen, ein Google Cloud-Projekt zu registrieren, das bereits mit einem anderen Merchant Center-Konto registriert ist, wird der Fehler ALREADY_REGISTERED angezeigt.

Wie authentifiziere ich den API-Aufruf zur Entwicklerregistrierung?

Um den API-Aufruf zur Entwicklerregistrierung für die Merchant API zu authentifizieren, verwenden Sie Anmeldedaten, die über ein Google Cloud-Projekt verwaltet werden. Sie haben zwei primäre Optionen für die Identität, mit der die Authentifizierung erfolgt:

  • Google-Konto wie Gmail mit OAuth 2.0: Bei dieser Methode werden OAuth 2.0-Clientanmeldedaten verwendet, die in Ihrem Google Cloud-Projekt generiert wurden. Der API-Aufruf wird im Namen eines bestimmten Google-Kontos autorisiert, in das sich der Nutzer einloggt.
  • Dienstkonto: Bei dieser Methode wird ein Google Cloud-Dienstkonto verwendet. Dies ist eine spezielle Art von Google-Konto, die für Anwendungen vorgesehen ist. Anmeldedaten für das Dienstkonto werden ebenfalls in Ihrem Google Cloud-Projekt verwaltet.

Für eine erfolgreiche Entwicklerregistrierung muss die authentifizierende Identität (Google-Konto oder Dienstkonto) die folgenden Kriterien im Merchant Center erfüllen:

  • Als Nutzer im Merchant Center vorhanden: Die E‑Mail-Adresse, die mit dem authentifizierenden Google-Konto oder dem Dienstkonto verknüpft ist, muss als Nutzer in dem Merchant Center-Konto hinzugefügt werden, das Sie registrieren.
  • Administratorrolle erforderlich: Diesem Nutzer muss die Rolle ADMIN für das jeweilige Merchant Center-Konto zugewiesen sein.

Bei API-Aufrufen gilt Folgendes:

  • Wenn Sie direkte API-Aufrufe verwenden, müssen Sie ein gültiges Zugriffstoken abrufen und im Authorization-Header angeben. Dieses Token wird durch den OAuth 2.0-Ablauf für ein Google-Konto oder den Server-zu-Server-Authentifizierungsablauf für ein Dienstkonto generiert.
  • Clientbibliotheken von Google übernehmen in der Regel die Komplexität des Abrufens und Aktualisierens von Zugriffstokens für Sie.

Der authentifizierende Nutzer ist möglicherweise nicht derselbe wie der Nutzer, der als Kontakt für Entwickler angegeben ist. Weitere Informationen finden Sie unter Was ist der Unterschied zwischen der E‑Mail-Adresse für die Authentifizierung und der E‑Mail-Adresse für den Entwicklerkontakt?

Wie oft muss ich Zugriffstokens aktualisieren?

Zugriffstokens für Dienstkonten und OAuth 2.0 laufen in der Regel nach einer Stunde ab. Der Mechanismus zum Abrufen eines neuen Tokens hängt jedoch von der verwendeten Authentifizierungsmethode ab:

  • Dienstkonten verwenden einen privaten Schlüssel oder Umgebungsanmeldedaten, um bei Bedarf ein neues Zugriffstoken zu erstellen.
  • Bei OAuth 2.0-Abläufen wird ein refresh_token verwendet, um den Google OAuth2-Tokenendpunkt aufzurufen und ein neues einstündiges Zugriffstoken zu erhalten.

Wir empfehlen dringend, die offiziellen Google Auth-Bibliotheken zu verwenden, da diese die Rotation automatisch verarbeiten, sodass Ihre Anwendung nie ausfällt.

Nutzer und Rollen

Häufig gestellte Fragen zu Nutzern und Rollen:

Muss das E-Mail-Konto des Entwicklers bereits im Merchant Center vorhanden sein?

Nein. Wenn das E‑Mail-Konto für die Registrierung noch nicht im Merchant Center vorhanden ist, wird das Konto mit der angegebenen E‑Mail-Adresse im Status „Ausstehend“ im Merchant Center erstellt. Wenn die E‑Mail-Adresse des Entwicklers zu einem vorhandenen Nutzer im Merchant Center-Konto gehört, wird ihm automatisch die Rolle API_DEVELOPER zugewiesen.

Muss die E‑Mail-Adresse des Entwicklerkontakts Administratorrechte im Merchant Center haben?

Nein. Der Merchant Center-Nutzer, der mit der E-Mail-Adresse des Entwicklerkontakts verknüpft ist, erhält standardmäßig die Rolle API_DEVELOPER, die zum Empfangen wichtiger Benachrichtigungen erforderlich ist. Sie hat jedoch nur minimale Berechtigungen im Merchant Center. Wenn Sie diesem Nutzer erlauben möchten, andere API-Aufrufe zu tätigen oder Einstellungen in der Merchant Center-Benutzeroberfläche zu verwalten, müssen Sie ihm zusätzliche Rollen wie STANDARD oder ADMIN zuweisen. Weitere Informationen zu Merchant Center-Rollen finden Sie unter „Zugriffstypen“.

Welche Berechtigungen hat die Rolle „API Developer“?

Die Rolle API Developer ist eine Rolle mit minimalen Berechtigungen im Merchant Center. Wenn Sie die E-Mail-Adresse des Entwicklers verwenden möchten, um Aufrufe der Merchant API zu autorisieren, empfehlen wir, die Berechtigungen ADMIN oder STANDARD hinzuzufügen, damit der Nutzer API-Aufrufe ausführen kann.

Muss ich jeden Entwicklernutzer oder jedes Dienstkonto registrieren, das die API aufruft?

Nein. Die Entwicklerregistrierung ist an das Google Cloud-Projekt gebunden, das für die API-Aufrufe verwendet wird, nicht an einzelne Nutzer oder Dienstkonten. Sobald ein Google Cloud-Projekt erfolgreich in Ihrem primären Merchant Center-Konto registriert wurde, können Sie jede Identität verwenden, die über das verknüpfte Google Cloud-Projekt mit OAuth-Anmeldedaten oder Dienstkonten verwaltet wird, um Merchant API-Aufrufe zu autorisieren, sofern sie in Ihrem Merchant Center vorhanden sind und die Rolle ADMIN zugewiesen haben.

Wie ändere ich die E-Mail-Adresse für den Entwicklerkontakt nach der ersten Registrierung?

Wenn Sie Kontakte verwalten oder ändern möchten, verwenden Sie den Standarddienst accounts.users oder die Seite „Zugriff und Dienste“ in der Merchant Center-Benutzeroberfläche, um Nutzer mit der Rolle API Developer hinzuzufügen oder zu entfernen.

Was passiert, wenn der letzte Nutzer mit der Rolle „API-Entwickler“ aus dem Merchant Center-Konto entfernt wird?

Es wird ein Kulanzzeitraum von 30 Tagen ausgelöst, um eine sofortige Dienstunterbrechung zu vermeiden. Während dieser Zeit:

  • Administratoren erhalten drei obligatorische Servicemitteilungen per E‑Mail (in der Regel etwa 30, 17 und 4 Tage vor der Sperrung).
  • API-Aufrufe funktionieren weiterhin normal.
  • Wenn vor Ablauf der Kulanzfrist kein neuer API Developer hinzugefügt wird, werden API-Aufrufe aus den zugehörigen Google Cloud-Projekten mit einem AUTH_GCP_NOT_REGISTERED-Fehler blockiert.

Nach Ablauf der 30‑tägigen Kulanzfrist werden API‑Aufrufe aus den zugehörigen Google Cloud-Projekten blockiert und es wird der Fehler AUTH_GCP_NOT_REGISTERED zurückgegeben, bis ein gültiger Entwicklerkontakt wiederhergestellt ist.

Was passiert, wenn die Merchant Center-ID gelöscht wird, unter der die Entwicklerregistrierung erfolgt ist?

Löschen Sie das Merchant Center-Konto, das für die Entwicklerregistrierung verwendet wird, nicht, solange Ihre Integration aktiv ist. Wenn Sie dieses Konto löschen, wird Ihre Integration sofort unterbrochen und Sie können keine API-Aufrufe mehr über das zugehörige Google Cloud-Projekt ausführen.

Wenn Sie dieses Merchant Center-Konto löschen müssen, sollten Sie zuerst die Methode unregisterGcp aufrufen, um die Verknüpfung sicher zu entfernen. Erst dann sollten Sie die Merchant Center-ID löschen. Wenn Sie die Merchant API weiterhin verwenden möchten, müssen Sie sich direkt nach der Abmeldung mit einer anderen Merchant Center-ID registrieren. Erst dann sollten Sie die Merchant Center-ID löschen.

Besondere Anwendungsfälle

Häufig gestellte Fragen zu speziellen Anwendungsfällen:

Ich bin eine Agentur oder ein Drittentwickler und verwalte mehrere Händlerkonten. Wie richte ich das am besten ein?

Drittanbieterentwickler und ‑agenturen sollten ihr eigenes primäres Merchant Center-Konto haben und alle ihre Google Cloud-Projekte in diesem einen zentralen Konto registrieren. Registrieren Sie Ihr Google Cloud-Projekt nicht für das Konto jedes einzelnen Händlers.

Wie funktioniert die Registrierung für Google Apps Script?

App-Scripts werden in der Regel in einem Standard-Google Cloud-Projekt ausgeführt. Sie müssen diese Standard-Google Cloud-ID in Ihrem Merchant Center-Konto registrieren. Die Google Cloud-ID wird automatisch von der API abgerufen. Sie müssen sie also nicht als Parameter angeben.

Kann ich prüfen, ob eine Merchant Center-ID für eine bestimmte Google Cloud-Projekt-ID registriert ist?

Ja. Mit der Methode getAccountForGcpRegistration können Sie prüfen, welche Merchant Center-ID für ein bestimmtes Google Cloud-Projekt registriert ist. Wenn Sie die Verknüpfung eines Google Cloud-Projekts mit Ihrem Merchant Center-Konto aufheben möchten, verwenden Sie die Methode unregisterGcp.