Google Ads API의 REST 인터페이스를 사용할 때는 Google Ads API의 .proto 설명자 파일에 정의된 동일한 리소스 및 유형의 JSON 표현을 사용합니다. JSON 인코딩 스키마는 프로토콜 버퍼 언어 가이드의 JSON 매핑 섹션에 설명된 표준 인코딩 스키마를 따릅니다.
일반적으로
서비스 간의 모든 최상위 메시지는 단일 JSON 객체입니다.
대부분의 mutate 요청에는 많은 create, update 또는 delete 작업을 포함하는 operations 배열이 포함되어 있습니다. 마찬가지로 search 응답은 쿼리의 결과 집합이 포함된 results 배열이 포함된 JSON 객체입니다.
식별자는 프로토콜 버퍼의 snake_case 에서 JSON의
lowerCamelCase 로 변환됩니다. 이 규칙의 한 가지 주목할 만한 주의사항은
search 또는 searchStream을 사용하여 Google Ads Query Language
쿼리를 전송할 때입니다. 쿼리 언어 자체는 사용 중인 인터페이스와 관계없이 스네이크 표기법을 사용합니다. 하지만 REST의 쿼리 결과는 일반 JSON 객체로 반환되며 식별자는 lowerCamelCase로 지정됩니다.
예를 들어 계정에서 활성 키워드 목록을 가져오는 쿼리는 쿼리 자체 내에서 스네이크 표기법 (ad_group_criterion, 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'" }
하지만 응답은 객체의 JSON 표현이며 (이 요청은 searchStream을 사용하므로 JSON 배열로 래핑됨) 대신 카멜 케이스 식별자 adGroupCriterion을 사용합니다.
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]