Język zapytań Google Ads

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Język zapytań Google Ads pozwala wysyłać zapytania do interfejsu Google Ads API

Zasoby i powiązane z nimi atrybuty, segmenty i dane za pomocą
GoogleAdsService Search lub SearchStream
Wynikiem zapytania GoogleAdsService jest lista instancji GoogleAdsRow, z których każda reprezentuje GoogleAdsRow zasobu. Jeśli wymagane są jakieś atrybuty lub dane, wiersz zawiera te pola. Jeśli zażądano segmentów, w odpowiedzi pojawi się też dodatkowy wiersz dla każdej próbki zasobów segmentu.
Metadane dotyczące dostępnych pól i zasobów w
GoogleAdsFieldService

Ta usługa udostępnia katalog pól z zapytaniami, które zawierają ich zgodność i typ.

Wynik zapytania GoogleAdsFieldService to lista instancji GoogleAdsField, przy czym każde z nichGoogleAdsField zawiera szczegółowe informacje o żądanym polu.

Zapytanie o atrybuty zasobu

Poniżej znajduje się podstawowe zapytanie o atrybuty zasobu kampanii, ilustrujące sposób zwracania identyfikatora, nazwy i stanu kampanii:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

To zapytanie jest uporządkowane według identyfikatora kampanii. Każdy wynikowy obiekt GoogleAdsRow reprezentuje obiekt campaign, który zawiera wybrane pola (w tym resource_name w danej kampanii).

Aby dowiedzieć się, jakie inne pola są dostępne w przypadku zapytań dotyczących kampanii, zajrzyj do dokumentacji referencyjnej Campaign.

Zapytania o wskaźniki

Oprócz wybranych atrybutów danego zasobu możesz też wysyłać zapytania o powiązane dane:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

To zapytanie filtruje tylko kampanie, które mają stan PAUSED i ponad 1000 wyświetleń, sortując je według identyfikatora kampanii. Każdy wynikowy element GoogleAdsRow miałby pole metrics wypełnione wybranymi danymi.

Listę danych, których dotyczy zapytanie, znajdziesz w Metrics dokumentacji.

Zapytania o segmenty

Oprócz wybranych atrybutów danego zasobu możesz też wysyłać zapytania o powiązane segmenty:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

Podobnie jak w przypadku zapytania o dane, to zapytanie filtruje tylko kampanie, które mają stan PAUSED i uzyskały ponad 1000 wyświetleń, ale zapytanie dzieli dane według daty. Prowadzi to do każdego wyniku GoogleAdsRow reprezentującego część kampanii i daty Segment. Pamiętaj, że podział na segmenty pozwala podzielić wybrane dane według grupowania w klauzuli SELECT.

Listę segmentów, których dotyczy zapytanie, znajdziesz w dokumentacji Segments.

W zapytaniu dotyczącym danego zasobu możesz dołączyć do innych powiązanych zasobów, jeśli są dostępne. Takie powiązane zasoby są nazywane „zasobami przypisanymi”. Możesz dołączyć bezpośrednio do przypisanych zasobów, wybierając atrybut w zapytaniu.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

To zapytanie nie tylko wybiera atrybuty kampanii, ale też pobiera powiązane atrybuty z każdej wybranej kampanii. Każdy wynikowy GoogleAdsRow reprezentuje obiekt campaign zawierający wybrane atrybuty kampanii, a także wybrany atrybut strategii ustalania stawek bidding_strategy.name.

Aby dowiedzieć się, jakie przypisane zasoby są dostępne w przypadku zapytań dotyczących kampanii, zajrzyj do dokumentacji referencyjnej Campaign.

Mutacja na podstawie wyników zapytania

Wykonując zapytania na temat danego zasobu, możesz natychmiast pobrać zwrócone wyniki jako obiekty, zmodyfikować je i przesłać z powrotem do metody mutacji w usłudze tego zasobu. Oto przykładowy przepływ pracy:

  1. Wykonaj zapytanie dla wszystkich kampanii, które obecnie są PAUSED i mają ponad 1000 wyświetleń.
  2. Pobierz obiekt Campaign z pola campaign każdego GoogleAdsRow w odpowiedzi.
  3. Zmień stan każdej kampanii z PAUSED na ENABLED.
  4. Aby je zaktualizować, wywołaj CampaignService.MutateCampaigns zmodyfikowane kampanie.

Metadane pola

Zapytania wysyłane do GoogleAdsFieldService są przeznaczone do pobierania metadanych pól. Te informacje mogą posłużyć do zrozumienia, w jaki sposób pola mogą być używane razem w zapytaniu. Dane są dostępne za pomocą interfejsu API i mają metadane potrzebne do weryfikacji lub kompilowania zapytania, dzięki czemu programiści mogą to zrobić w sposób zautomatyzowany. Typowe zapytanie dotyczące metadanych:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

Ciąg <INSERT_RESOURCE_OR_FIELD> w tym zapytaniu możesz zastąpić zasobem (takim jak customer lub campaign) lub polem (takim jak campaign.id, metrics.impressions lub ad_group.id).

Listę pól, które mogą być objęte zapytaniami, znajdziesz w GoogleAdsField dokumentacji.

Przykłady kodu

Biblioteki klienta zawierają przykłady korzystania z języka Google Ads w języku GoogleAdsService. Folder operacje podstawowe zawiera przykłady, takie jak GetCampaigns, GetKeywords i SearchForGoogleAdsFields. Folder reporting zawiera przykład GetKeywordStats.