Search Ads 360 Reporting API の REST インターフェースを使用する場合、Search Ads 360 Reporting API の .proto 記述子ファイルで定義されているものと同じリソースとタイプの JSON 表現を操作することになります。JSON エンコード スキームは、プロトコル バッファ言語ガイドの JSON マッピング セクションで説明されている正規のエンコード スキームに従っています。
一般に、サービスとの間のトップレベル メッセージはすべて単一の JSON オブジェクトです。search
レスポンスは、クエリの結果セットを含む results
配列を含む JSON オブジェクトです。
識別子は、プロトコル バッファ内の snake_case から JSON 内の lowerCamelCase に変換されます。このルールの注意点の一つは、search
または searchStream
を使用して検索広告 360 のクエリ言語クエリを送信する場合です。使用しているインターフェースに関係なく、クエリ言語自体でスネークケースが使用されます。ただし、REST でのクエリの結果は通常の JSON オブジェクトとして返され、識別子は lowerCamelCase になります。
たとえば、アカウント内のアクティブなキーワードのリストを取得するクエリでは、クエリ自体の内部でスネークケースを使用します(adGroupCriterion
ではなく ad_group_criterion
)。
POST /v0/customers/CUSTOMER_ID/searchAds360:searchStream HTTP/1.1 Host: searchads360.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 配列でラップ)であり、代わりにキャメルケース ID adGroupCriterion
を使用します。
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]