Überblick

Reporting API

Mit der Reporting API können Händler über die Merchant Center Query Language programmatisch mit ihren Leistungsdaten interagieren. Dies ähnelt der Möglichkeit, direkt im Merchant Center benutzerdefinierte Berichte zu erstellen. Die Reporting API bietet folgende Vorteile:

  • Ermöglicht Großhändlern, Leistungsdaten für Produkteinträge in ihre internen oder Drittanbieter-Berichtssysteme zu importieren.
  • Ermöglicht Nutzern, Drittanbietern und Aggregatoren, die Merchant Center-Konten verwalten, auf Berichte zuzugreifen.

API-Nutzer können angeben, welche Leistungsdaten sie in der Antwort des Suchaufrufs abrufen möchten:

  • Zurückzugebende Messwerte (z. B. Klicks, Impressionen)
  • Dimensionen, in denen die Daten segmentiert werden sollen (z. B. OfferId, Date)
  • Bedingungen, die erfüllt sein müssen (z. B. Klicks > 100)

Mit der Abfragesprache der Reporting API kann die Content API for Shopping mithilfe der Methode Search im Dienst Reports nach Leistungsmesswerten (Klicks, Impressionen) abfragen, die möglicherweise nach verschiedenen Dimensionen segmentiert sind (gemeldete Ereignisattribute wie Programm und Datum und Produktattribute wie Marke, Kategorie usw.).

Das Ergebnis einer Abfrage an den Dienst Reports ist eine Liste von ReportRow-Instanzen, wobei jede ReportRow die Werte der angeforderten Messwerte für Segmente darstellt, die Sie in Ihrer Abfrage angegeben haben. Wenn keine Segmente angegeben sind, wird eine einzelne Zeile mit Messwerten zurückgegeben, die für alle Segmente aggregiert sind. Wenn Segmente neben Messwerten angefordert werden, wird in der Antwort eine Zeile für jedes einzelne Segmenttupel angezeigt. Es ist möglich, mehrere Segmente und mehrere Messwerte in einer einzigen Abfrage auszuwählen.

Abfrage von Messwerten

Sie können Messwerte (Klicks, Impressionen, CTR usw.) abfragen, die zurückgegeben werden sollen. Sie müssen einen Filter für den Zeitraum hinzufügen, um den Berichtsdienst abzufragen. Bei der folgenden Beispielabfrage wird eine einzelne Zeile zurückgegeben: die Gesamtzahl der Klicks innerhalb der hinzugefügten Bedingung eines Zeitraums.

SELECT metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2020-12-01' AND '2020-12-21';

Beispielantwort

Die folgende JSON-Code-Beispielantwort zeigt, dass dieser Händler zwischen dem 1. Dezember 2020 und dem 21. Dezember 2020 4.440 Klicks für alle seine Produkte und Ziele zusammengerechnet hat.

{"results": [
    {
      "metrics": {
        "clicks": "4,440"
      }
    }
]}

Segmente abfragen

Neben Messwerten können Sie auch Segmente abfragen. Dabei kann es sich um ein Attribut eines Produkts (offer_id, brand, category usw.) oder um ein Attribut eines gemeldeten Ereignisses (date, program) handeln. Ein gemeldetes Ereignis ist eine Impression oder ein Klick für ein Produkt.

Segmente verhalten sich ähnlich wie GROUP BY in SQL. Die ausgewählten Messwerte werden durch Segmente aufgeteilt und in der SELECT-Klausel nach den einzelnen Segmenten gruppiert. Die folgende Beispielabfrage gibt Klicks pro Tag zurück, sortiert nach Klicks, absteigend innerhalb der hinzugefügten Bedingung eines Zeitraums. Es werden nur Zeilen zurückgegeben, in denen mindestens ein angeforderter Messwert ungleich null ist.

SELECT
  segments.date,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2020-12-01' AND '2020-12-03'
ORDER BY metrics.clicks DESC;

Beispielantwort

Die folgende JSON-Code-Beispielantwort zeigt, dass dieser Händler am 1. Dezember 2020 für alle Produkte in allen Zielen 1.546 Klicks und am 2. Dezember 2020 829 Klicks auf alle seine Produkte in allen Zielen hat. Für den 3. Dezember 2020 wird kein Objekt zurückgegeben, da der Händler an diesem Tag keine Klicks erhalten hat.

{
  "results": [
    {
      "segments": {
        "date": {
          "year": 2020,
          "month": 12,
          "day": 1
        }
      },
      "metrics": {
        "clicks": "1546"
      }
    },
    {
      "segments": {
        "date": {
          "year": 2020,
          "month": 12,
          "day": 2
        }
      },
      "metrics": {
        "clicks": "829"
      }
    }
]}