Lorsque vous utilisez l'interface REST de l'API Google Ads, vous travaillez avec des représentations JSON des mêmes ressources et types définis dans les fichiers descripteurs.proto de l'API Google Ads. Le schéma d'encodage JSON suit le schéma d'encodage canonique décrit dans la section Mappage JSON du Guide du langage des protocol buffers.
En général, tous les messages de niveau supérieur envoyés aux services et reçus de leur part sont des objets JSON uniques.
La plupart des requêtes de mutation contiennent un tableau operations
qui contient lui-même de nombreuses opérations create
, update
ou delete
. De même, les réponses search
sont des objets JSON contenant un tableau results
avec l'ensemble de résultats de votre requête.
Les identifiants sont transformés de snake_case (dans les tampons de protocole) en lowerCamelCase dans JSON. Une exception notable à cette règle concerne l'utilisation de search
ou searchStream
pour envoyer des requêtes Langage de requête Google Ads. Le langage de requête lui-même utilise snake case, quelle que soit l'interface que vous utilisez. Toutefois, les résultats d'une requête dans REST sont renvoyés sous forme d'objets JSON normaux et leurs identifiants sont en lowerCamelCase.
Par exemple, une requête permettant d'extraire la liste des mots clés actifs dans un compte utilise la casse snake dans la requête elle-même (ad_group_criterion
, et non adGroupCriterion
) :
POST /v21/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'" }
Toutefois, la réponse est une représentation JSON des objets (encapsulée dans un tableau JSON, car cette requête utilise searchStream
) et utilise plutôt l'identifiant camelCase adGroupCriterion
:
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]