Metadane zasobu

Możesz używać GoogleAdsFieldService (za pomocą GetGoogleAdsField lub SearchGoogleAdsFields), aby dynamicznie wysyłać żądania dotyczące katalogu zasobów, pól zasobów, kluczy segmentacji i danych dostępnych w metodach GoogleAdsService Search i SearchStream. Katalog zawiera metadane, które mogą być używane przez klientów interfejsu Google Ads API do sprawdzania poprawności i tworzenia instrukcji w języku Google Ads Query Language.

Przykładowe żądanie i odpowiedź HTTP

Żądanie składa się z HTTP GET do serwera interfejsu Google Ads API pod tym adresem URL:

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

Poniższy przykład pokazuje żądanie, a następnie odpowiedź zwróconą przez GoogleAdsFieldService dla zasobu ad_group:

Żądanie

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

Odpowiedź

{
  "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"
  ]
}

W tym przykładzie ważne tablice to:

attributeResources
Zasoby, które można niejawnie dołączyć do zasobu w klauzuli FROM bez segmentowania danych. Wartość jest podawana tylko w przypadku pól, w których category to RESOURCE.
metrics
Dane, które można wybrać z zasobem w klauzuli FROM. Informacja podawana tylko w przypadku pól, w których category to RESOURCE.
segments
Klucze segmentów (pola segments.* i zasoby segmentujące), które można wybrać z zasobem w klauzuli FROM. Dzielą one na segmenty dane określone w zapytaniu. Wartość jest podawana tylko w przypadku pól, w których category to RESOURCE.
selectableWith
Zasoby, segmenty lub dane, które można wybrać w tym samym zapytaniu w języku Google Ads Query Language, gdy ten zasób lub segment nie jest głównym zasobem w klauzuli FROM.

Sprawdzanie zgodności z selectableWith

Atrybut selectableWith w polu zasobu lub segmentu określa inne zasoby, segmenty lub dane, które można wybrać w tym samym zapytaniu w języku zapytań Google Ads. Ten atrybut jest kluczowy, gdy chcesz uwzględnić pola z zasobu lub segmentu, który nie jest określony w klauzuli FROM.

Podczas tworzenia zapytania w języku Google Ads Query Language:

  1. Zasób w klauzuli FROM jest encją podstawową. Zawsze możesz wybrać pola z tego zasobu.
  2. Możesz też wybrać zgodne dane i segmenty, które są dostępne w przypadku elementu podstawowego.
  3. Jeśli uwzględnisz pola z dowolnego zasobu lub segmentu spoza klauzuli FROM, musisz się upewnić, że ten zasób lub segment spoza klauzuli FROM jest zgodny ze wszystkimi innymi polami, segmentami i danymi wybranymi w zapytaniu.

Lista selectableWith dla konkretnego zasobu (zasób A) zawiera wszystkie inne zasoby, segmenty i rodzaje danych, które można wybrać razem z polami z zasobu A, gdy zasób A nie jest elementem nadrzędnym.

Przykład

Przeanalizuj to przykładowe zapytanie:

SELECT ad_group.id, segments.date, campaign.name FROM ad_group
  • Klauzula FROM określa ad_group.
  • To zapytanie wybiera ad_group.id (z zasobu FROM), segments.date i campaign.name.
  • Ponieważ wybrano campaign.name, ale campaign nie znajduje się w klauzuli FROM, musisz sprawdzić zgodność z innymi wybranymi elementami.
  • Aby to zapytanie było prawidłowe, zasób campaign musi być zgodny z zasobem segments.date (wybrano inne pole). Dlatego musisz sprawdzić atrybut selectableWith zasobu campaign. Jeśli segments.date znajduje się na liście selectableWith użytkownika campaign, zapytanie jest prawidłowe.

Jeśli wybierzesz pola z zasobu, którego nie ma w klauzuli FROM, lista selectableWith tego zasobu musi zawierać wszystkie inne segmenty i zasoby obecne w klauzuli SELECT.

Szczegóły metadanych

Możesz poprosić o katalog za pomocą GoogleAdsFieldService (według nazwy zasobu z GetGoogleAdsField lub przez zapytanie z SearchGoogleAdsFields) na tych poziomach GoogleAdsFieldCategory:

Zasób (RESOURCE)
Na przykład: googleAdsFields/campaign.
Atrybut zasobu (ATTRIBUTE)
Na przykład: googleAdsFields/campaign.name.
Pole segmentacji (SEGMENT)
Na przykład: googleAdsFields/segments.ad_network_type.
Wskaźnik (METRIC)
Na przykład: googleAdsFields/metrics.clicks.