Ao usar a interface REST da API Google Ads, você trabalha com representações JSON dos mesmos recursos e tipos definidos nos arquivos de descritor .proto da API Google Ads. O esquema de codificação JSON segue o esquema canônico descrito na seção Mapeamento JSON dos buffers de protocolo Guia de linguagem.
Em geral, todas as mensagens de nível superior para e de
serviços são objetos JSON únicos.
A maioria das solicitações de mutação contém uma matriz operations que, por sua vez, contém muitas operações create, update ou delete. Da mesma forma, as respostas search são objetos JSON que contêm uma matriz results com o conjunto de resultados da consulta.
Os identificadores são transformados de snake_case (em buffers de protocolo) para
lowerCamelCase em JSON. Uma ressalva importante para essa regra é ao usar
search ou searchStream para enviar consultas da linguagem de consulta do Google Ads. A linguagem de consulta usa snake case, independentemente da interface que você está usando. No entanto, os resultados de uma consulta em REST são retornados como objetos JSON normais e têm identificadores em lowerCamelCase.
Por exemplo, uma consulta para buscar uma lista de palavras-chave ativas em uma conta usa snake case dentro da própria consulta (ad_group_criterion, não adGroupCriterion):
POST /v26/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN { "query": "SELECT ad_group_criterion.keyword.text FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }
No entanto, a resposta é uma representação JSON dos objetos (encapsulada em uma matriz JSON, já que essa solicitação usa searchStream) e usa o identificador camelCase adGroupCriterion:
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]