Метаданные ресурса

Вы можете использовать метод GoogleAdsFieldService (через GetGoogleAdsField или SearchGoogleAdsFields), чтобы динамически запрашивать каталог ресурсов, поля ресурсов, ключи сегментирования и показатели, доступные в методах GoogleAdsService Search и SearchStream. Каталог содержит метаданные, которые клиенты Google Ads API могут использовать для проверки и создания операторов языка запросов Google Рекламы.

Пример HTTP-запроса и ответа

Запрос состоит из HTTP GET к серверу Google Ads API по следующему URL:

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

В примере ниже показан запрос и ответ, полученный от GoogleAdsFieldService для ресурса ad_group:

Запрос

https://googleads.googleapis.com/v25/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 без сегментирования показателей. Заполняется только для полей, где значение category – RESOURCE.
metrics
Показатели, которые можно выбрать вместе с ресурсом в FROM предложении. Заполняется только для полей, где значение category – RESOURCE.
segments
Ключи сегментов (поля segments.* и ресурсы сегментирования), которые можно выбрать вместе с ресурсом в предложении FROM. Они сегментируют показатели, указанные в запросе. Заполняется только для полей, где category – это RESOURCE.
selectableWith
Ресурсы, сегменты или показатели, которые можно выбрать в одном запросе на языке запросов Google Рекламы, если этот ресурс или сегмент не является основным ресурсом в предложении FROM.

Запрос совместимости с selectableWith

Атрибут selectableWith в поле ресурса или сегмента указывает на другие ресурсы, сегменты или показатели, которые можно выбрать в том же запросе на языке запросов Google Рекламы. Этот атрибут необходим, если вы хотите включить поля из ресурса или сегмента, не указанного в предложении FROM.

При создании запроса на языке запросов Google Рекламы:

  1. Ресурс в предложении FROM является основным объектом. Вы всегда можете выбрать поля из этого ресурса.
  2. Вы также можете выбрать совместимые показатели и сегменты, доступные для основного объекта.
  3. Если вы включаете поля из любого ресурса или сегмента вне конструкции FROM , убедитесь, что этот FROMресурс или сегмент совместим со всеми другими полями, сегментами и показателями, выбранными в запросе.

Список selectableWith для определенного ресурса (Ресурса А) содержит все остальные ресурсы, сегменты и показатели, которые можно выбрать вместе с полями из Ресурса А, если Ресурс А не является основным объектом.

Пример

Рассмотрим следующий запрос:

SELECT ad_group.id, segments.date, campaign.name FROM ad_group
  • Предложение FROM задает ad_group.
  • Этот запрос выбирает ad_group.id (из ресурса FROM), segments.date и campaign.name.
  • Поскольку выбран вариант campaign.name, но вариант campaign отсутствует в конструкции FROM, необходимо проверить его совместимость с другими выбранными элементами.
  • Чтобы этот запрос был действительным, ресурс campaign должен быть совместим с segments.date (другим выбранным полем). Поэтому вам необходимо проверить атрибут selectableWith для ресурса campaign. Если элемент segments.date присутствует в списке selectableWith объекта campaign, запрос действителен.

Если вы выбираете поля из ресурса, которого нет в условии FROM, список selectableWith этого ресурса должен включать все остальные сегменты и ресурсы, присутствующие в условии SELECT.

Сведения о метаданных

Вы можете запросить каталог с помощью GoogleAdsFieldService (по названию ресурса с помощью GetGoogleAdsField или с помощью запроса SearchGoogleAdsFields) на следующих уровнях: GoogleAdsFieldCategory.

Ресурс (RESOURCE)
Например, googleAdsFields/campaign.
Атрибут ресурса (ATTRIBUTE)
Например, googleAdsFields/campaign.name.
Поле сегментирования (SEGMENT)
Например, googleAdsFields/segments.ad_network_type.
Показатель (METRIC)
Например, googleAdsFields/metrics.clicks.