Język zapytań Google Ads może wysyłać zapytania do interfejsu Google Ads API
- Zasoby oraz powiązane z nimi atrybuty, segmenty i dane za pomocą
GoogleAdsService
Wyszukiwarka lub Strumień wyszukiwania- Wyniki zapytania GoogleAdsService to lista instancji
GoogleAdsRow
, z których każdyGoogleAdsRow
reprezentuje zasób. Jeśli wymagane są jakieś atrybuty lub dane, wiersz zawiera też te pola. W przypadku żądań segmentów odpowiedź pokazuje też dodatkowy wiersz dla każdej krotki zasobu segmentu. - Metadane dotyczące dostępnych pól i zasobów w
GoogleAdsFieldService
Ta usługa udostępnia katalog pól, do których można wykonać zapytania, ze specyfikacjami dotyczącymi ich zgodności i typu.
Wynik zapytania
GoogleAdsFieldService
to lista instancjiGoogleAdsField
, z których każdyGoogleAdsField
zawiera informacje o żądanym polu.
Zapytanie o atrybuty zasobu
Poniżej znajdziesz podstawowe zapytanie o atrybuty zasobu kampanii i pokazujące, jak zwrócić identyfikator, nazwę i stan kampanii:
SELECT
campaign.id,
campaign.name,
campaign.status
FROM campaign
ORDER BY campaign.id
To zapytanie porządkuje według identyfikatora kampanii. Każda otrzymana wartość GoogleAdsRow
reprezentuje obiekt campaign
wypełniony wybranymi polami (łącznie z obiektem resource_name
danej kampanii).
Aby dowiedzieć się, jakie inne pola są dostępne w przypadku zapytań dotyczących kampanii, zapoznaj się z dokumentacją Campaign
.
Wysyłanie zapytań o wskaźniki
Oprócz wybranych atrybutów dotyczących danego zasobu możesz też wysyłać zapytania o powiązane wskaźniki:
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 te kampanie, które mają stan PAUSED
i które uzyskały ponad 1000 wyświetleń, i porządkują je według identyfikatora kampanii. W przypadku każdego wyniku GoogleAdsRow
pole metrics
zawiera wybrane dane.
Listę wskaźników, do których można wysyłać zapytania, znajdziesz w dokumentacji Metrics
.
Zapytania dotyczące segmentów
Oprócz wybranych atrybutów dla 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 zapytań o dane, to zapytanie filtruje tylko te kampanie, których stan to PAUSED
i które miały ponad 1000 wyświetleń. Jednak to zapytanie segmentuje dane według daty. W ten sposób każda zmienna GoogleAdsRow
reprezentuje krotkę kampanii z datą Segment
. Pamiętaj, że podział na segmenty spowoduje podział wybranych danych, a ich grupowanie według każdego segmentu w klauzuli SELECT.
Listę segmentów, do których można wysyłać zapytania, znajdziesz w dokumentacji Segments
.
Zapytanie o atrybuty powiązanego zasobu
W zapytaniu dotyczącym danego zasobu możesz połączyć je z innymi powiązanymi zasobami, jeśli są dostępne. Takie powiązane zasoby są nazywane „przypisanymi zasobami”. Możesz domyślnie złączać zasoby z przypisanymi zasobami, 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 utworzony w ten sposób obiekt GoogleAdsRow
reprezentuje obiekt campaign
wypełniony wybranymi atrybutami kampanii oraz wybranym atrybutem strategii ustalania stawek bidding_strategy.name
.
Aby dowiedzieć się, jakie przypisane zasoby są dostępne w przypadku zapytań dotyczących kampanii, zapoznaj się z dokumentacją referencyjną Campaign
.
Mutowanie na podstawie wyników zapytania
Podczas wykonywania zapytań dotyczących danego zasobu możesz natychmiast wykorzystać zwrócone wyniki jako obiekty, zmodyfikować je i odesłać z powrotem do metody mutate w usłudze danego zasobu. Poniżej znajduje się przykładowy przepływ pracy:
- Wykonaj zapytanie dotyczące wszystkich kampanii, których obecnie liczba wyświetleń wynosi
PAUSED
, a ich liczba wyświetleń przekracza 1000. - Pobierz obiekt
Campaign
z polacampaign
każdego obiektuGoogleAdsRow
w odpowiedzi. - Zmień stan każdej kampanii z
PAUSED
naENABLED
. - Wywołaj
CampaignService.MutateCampaigns
ze zmodyfikowanymi kampaniami, aby je zaktualizować.
Metadane pola
Zapytania wysyłane do GoogleAdsFieldService
służą do pobierania metadanych pola.
Na podstawie tych informacji możesz zrozumieć, jak pola mogą być używane razem w zapytaniu. Dane są dostępne za pomocą interfejsu API i dostarczają niezbędnych metadanych niezbędnych do weryfikacji lub tworzenia zapytania, dzięki czemu programiści mogą to zrobić w sposób zautomatyzowany. Oto typowe zapytanie o metadane:
SELECT
name,
category,
selectable,
filterable,
sortable,
selectable_with,
data_type,
is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"
<INSERT_RESOURCE_OR_FIELD>
w tym zapytaniu możesz zastąpić zasobem (takim jak customer
lub campaign
) albo polem (takim jak campaign.id
, metrics.impressions
lub ad_group.id
).
Listę pól, do których można tworzyć zapytania, znajdziesz w dokumentacji GoogleAdsField
.
Przykłady kodu
Biblioteki klienta zawierają przykłady użycia języka zapytań Google Ads w interfejsie GoogleAdsService
. Folder operacji podstawowych zawiera przykłady takie jak GetCampaigns
, GetKeywords
i SearchForGoogleAdsFields
.
Folder reporting zawiera przykład GetKeywordStats
.