JSON-Zuordnungen

Wenn Sie die REST-Schnittstelle der Google Ads API verwenden, arbeiten Sie mit JSON-Darstellungen derselben Ressourcen und Typen, die in den .proto-Beschreibungsdateien der Google Ads API definiert sind. Das JSON-Codierungsschema folgt dem kanonischen Codierungsschema, das im Abschnitt JSON-Zuordnung des Sprachleitfadens für Protokoll-Buffers beschrieben ist.

Im Allgemeinen sind alle Nachrichten der obersten Ebene an und von Diensten einzelne JSON-Objekte. Die meisten Mutationsanfragen enthalten ein operations-Array, das selbst viele create-, update- oder delete-Vorgänge enthält. search-Antworten sind ebenfalls JSON-Objekte, die ein results-Array mit dem Ergebnissatz Ihrer Abfrage enthalten.

IDs werden von snake_case (in Protokoll-Buffers) in lowerCamelCase in JSON umgewandelt. Eine wichtige Ausnahme von dieser Regel ist die Verwendung von search oder searchStream zum Senden von Abfragen in der Google Ads-Abfragesprache. In der Abfragesprache selbst wird die Snake-Case-Schreibweise verwendet, unabhängig davon, welche Benutzeroberfläche Sie verwenden. Die Ergebnisse einer Abfrage in REST werden jedoch als normale JSON-Objekte zurückgegeben und ihre IDs sind in Kleinbuchstaben mit CamelCase geschrieben.

In einer Abfrage zum Abrufen einer Liste der aktiven Keywords in einem Konto wird beispielsweise die Schreibweise im Schlangenpfad innerhalb der Abfrage selbst verwendet (ad_group_criterion, nicht adGroupCriterion):

POST /v19/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "query": "SELECT ad_group_criterion.keyword.text
            FROM ad_group_criterion
            WHERE ad_group_criterion.type = 'KEYWORD'
            AND ad_group_criterion.status = 'ENABLED'"
}

Die Antwort ist jedoch eine JSON-Darstellung der Objekte (in einem JSON-Array verpackt, da für diese Anfrage searchStream verwendet wird) und verwendet stattdessen die CamelCase-ID adGroupCriterion:

[
  {
    "results": [
      {
        "adGroupCriterion": {
          "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060",
          "keyword": {
            "text": "pay per click"
          }
        }
      },
      ...
    ]
  }
]