JSON-Zuordnungen

Wenn Sie die REST-Oberfläche der Google Ads API verwenden, arbeiten Sie mit JSON-Darstellungen derselben Ressourcen und Typen, die in den .proto-Descriptor-Dateien der Google Ads API definiert sind. Das JSON-Codierungsschema basiert auf dem kanonischen Codierungsschema, das im Abschnitt JSON-Zuordnung des Sprachleitfadens für Protokollzwischenspeicher beschrieben wird.

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

Kennungen werden von JSON von snake_case (in Protokollzwischenspeichern) in lowerCamelCase (kleinerCamelCase) umgewandelt. Diese Regel gilt besonders, wenn mit search oder searchStream Google Ads Query Language-Abfragen gesendet werden. Die Abfragesprache selbst verwendet einen Snake-Fall, unabhängig davon, welche Schnittstelle Sie verwenden. Die Ergebnisse einer Abfrage in REST werden jedoch als normale JSON-Objekte zurückgegeben und enthalten deren IDs in Kleinbuchstaben.

Beispielsweise wird bei einer Abfrage zum Abrufen einer Liste mit aktiven Keywords in einem Konto innerhalb der Abfrage selbst ein Schlangenfall verwendet (ad_group_criterion, nicht adGroupCriterion):

POST /v16/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 ein JSON-Array eingebettet, da diese Anfrage searchStream verwendet) und verwendet stattdessen die CamelCase-ID adGroupCriterion:

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