资源元数据

您可以使用 GoogleAdsFieldService 动态请求以下内容的目录:资源、资源的字段、细分键和指标,它们均位于 GoogleAdsService SearchSearchStream 方法中。该目录提供了各种元数据,可供 Google Ads API 客户端用于验证和构建 Google Ads 查询语言语句。

示例 HTTP 请求和响应

在以下网址中,该请求包含一个指向 Google Ads API 服务器的 HTTP GET

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

以下示例展示了请求以及 GoogleAdsFieldService 针对 ad_group 资源返回的响应:

请求

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.id(来自 FROM 资源)、segments.datecampaign.name

  • 由于选择了 campaign.name,但 FROM 子句中没有 campaign,因此您必须验证其与其他所选元素的兼容性。

  • 为确保此查询有效,campaign 资源必须与 segments.date(所选的另一个字段)兼容。因此,您必须检查 campaign 资源的 selectableWith 属性。如果 segments.date 存在于 campaignselectableWith 列表中,则查询有效。

如果您从 FROM 子句中未包含的资源中选择字段,则相应资源的 selectableWith 列表必须包含 SELECT 子句中存在的所有其他细分和资源。

元数据详情

您可以在以下级别使用 GoogleAdsFieldService 请求目录:

资源
例如,googleAdsFields/campaign
资源的字段
例如,googleAdsFields/campaign.name
细分字段
例如,googleAdsFields/segments.ad_network_type
指标
例如,googleAdsFields/metrics.clicks