リソース メタデータ

GoogleAdsFieldService を使用すると、GoogleAdsService Search メソッドと SearchStream メソッドで使用可能なリソース、リソースのフィールド、セグメンテーション キー、指標のカタログを動的にリクエストできます。このカタログによって、Google Ads API クライアントが Google 広告クエリ言語ステートメントの検証や作成に使用できるメタデータが提供されます。

HTTP リクエストとレスポンスのサンプル

リクエストは、次の URL にある Google Ads API サーバーへの HTTP GET で構成されています。

https://googleads.googleapis.com/v22/googleAdsFields/{resource_or_field}

次の例は、リクエストと、ad_group リソースに対して GoogleAdsFieldService から返されるレスポンスを示しています。

リクエスト

https://googleads.googleapis.com/v22/googleAdsFields/ad_group

レスポンス

{
  "resourceName": "googleAdsFields/ad_group",
  "name": "ad_group",
  "category": "RESOURCE",
  "selectable": false,
  "filterable": false,
  "sortable": false,
  "selectableWith": [
    "campaign",
    "customer",
    "metrics.average_cpc",
    "segments.device",
    ...
  ],
  "attributeResources": [
    "customer",
    "campaign"
  ],

  "metrics": [
    "metrics.conversions",
    "metrics.search_budget_lost_impression_share",
    "metrics.average_cost",
    "metrics.clicks",
    ...
  ],
  "segments": [
    "segments.date",
    "segments.ad_network_type",
    "segments.device",
    ...
  ]
}

このサンプルでは、重要な配列は次のとおりです。

attributeResources
FROM 句のリソースに無条件で結合できるリソース。
metrics
FROM 句のリソースで選択可能な指標。categoryRESOURCE のフィールドにのみ入力されます。
segments
FROM 句のリソースで選択できるセグメントキー。これらは、クエリで指定された指標をセグメント化します。categoryRESOURCE のフィールドにのみ入力されます。
selectableWith

リソースまたはセグメント フィールドの selectableWith 属性は、同じ GAQL クエリで選択できる他のリソース、セグメント、指標を指定します。この属性は、FROM 句で指定されていないリソースまたはセグメントのフィールドを含める場合に重要です。

GAQL クエリを作成する際は、次の点に注意してください。

  1. FROM 句のリソースは、プライマリ エンティティです。このリソースからフィールドをいつでも選択できます。
  2. また、メイン エンティティで使用可能な互換性のある指標とセグメントを選択することもできます。
  3. FROM 句以外のリソースまたはセグメントのフィールドを含める場合は、この FROM 以外のリソースまたはセグメントが、クエリで選択されている他のすべてのフィールド、セグメント、指標と互換性があることを確認する必要があります。

特定のリソース(リソース A とします)の selectableWith リストには、リソース A がプライマリ エンティティでない場合に、リソース A のフィールドとともに選択できる他のすべてのリソース、セグメント、指標が含まれます。

例:

次のクエリの例を考えてみましょう。 SELECT ad_group.id, segments.date, campaign.name FROM ad_group

  • FROM 句は ad_group を指定します。

  • このクエリは、ad_group.idFROM リソースから)、segments.datecampaign.name を選択します。

  • campaign.name が選択されているにもかかわらず、campaignFROM 句に含まれていないため、他の選択された要素との互換性を確認する必要があります。

  • このクエリが有効であることを確認するには、campaign リソースが segments.date(選択されている別のフィールド)と互換性がある必要があります。したがって、campaign リソースの selectableWith 属性を確認する必要があります。campaignselectableWith リストに segments.date が存在する場合、クエリは有効です。

FROM 句にないリソースからフィールドを選択する場合、そのリソースの selectableWith リストには、SELECT 句に存在する他のすべてのセグメントとリソースを含める必要があります。

メタデータの詳細

GoogleAdsFieldService を使用して、次の単位でカタログをリクエストできます。

リソース
例: googleAdsFields/campaign
リソースのフィールド
例: googleAdsFields/campaign.name
セグメント フィールド
例: googleAdsFields/segments.ad_network_type
指標
例: googleAdsFields/metrics.clicks