GoogleAdsService to ujednolicona usługa pobierania obiektów
i raportowania w interfejsie Google Ads API. Ta usługa ma metody, które umożliwiają:
- pobieranie konkretnych atrybutów obiektów,
- pobieranie danych o skuteczności obiektów na podstawie zakresu dat,
- sortowanie obiektów na podstawie ich atrybutów,
- używanie warunków do wskazywania, które obiekty mają być zwracane w odpowiedzi,
- ograniczanie liczby zwracanych obiektów.
GoogleAdsService może zwracać wyniki na
2 sposoby:
GoogleAdsService.SearchStreamzwraca wszystkie wiersze w jednej odpowiedzi strumieniowej,co jest bardziej wydajne w przypadku dużych zbiorów wyników (ponad 10 tys. wierszy). Może to być bardziej odpowiednie, jeśli aplikacja wsadowa ma pobierać jak najwięcej danych w jak najkrótszym czasie.GoogleAdsService.Searchdzieli duże odpowiedzi na strony z wynikami, które można łatwo zarządzać. Może to być bardziej odpowiednie, jeśli aplikacja interaktywna wyświetla naraz jedną stronę wyników.
Więcej informacji o stronicowaniu i przesyłaniu strumieniowym.
Poproś
Metoda wyszukiwania wymaga
SearchGoogleAdsRequest, która składa się
z tych atrybutów:
customer_idqueryw języku zapytań Google Ads, która wskazuje, który zasób ma być przeszukiwany, atrybuty, segmenty i dane do pobrania oraz warunki ograniczające zwracane obiekty- (
GoogleAdsService.Searchtylko) Opcjonalnypage_tokendo pobierania następnej partii wyników podczas korzystania ze stronicowania.
Więcej informacji o języku zapytań Google Ads znajdziesz w przewodniku po języku zapytań Google Ads.
Przetwarzanie odpowiedzi
GoogleAdsService zwraca listę obiektów
GoogleAdsRow.
Każdy GoogleAdsRow reprezentuje obiekt zwrócony przez zapytanie i składa się z zestawu atrybutów, które są wypełniane na podstawie pól żądanych w klauzuli SELECT. Atrybuty nieuwzględnione w klauzuli SELECT nie są wypełniane w obiektach GoogleAdsRow w odpowiedzi.
Na przykład, chociaż ad_group_criterion ma atrybut status, pole
status atrybutu ad_group_criterion w wierszu nie jest wypełniane w
odpowiedzi na zapytanie, w którym klauzula SELECT nie zawiera
ad_group_criterion.status. Podobnie atrybut campaign w wierszu nie jest wypełniany, jeśli klauzula SELECT nie zawiera żadnych pól z zasobu campaign.
Każdy GoogleAdsRow może mieć inne atrybuty i dane niż inny wiersz w tym samym zbiorze wyników. Dlatego wiersze należy traktować jako obiekty, a nie stałe wiersze tabeli.
Typy wyliczeń UNKNOWN
Zasoby zwracane z typem UNKNOWN nie są w pełni obsługiwane w tej wersji interfejsu API. Te zasoby mogły zostać utworzone za pomocą innych interfejsów, np. interfejsu Google Ads. Gdy zasób ma typ UNKNOWN, możesz wybrać dane, ale nie możesz go modyfikować za pomocą interfejsu API. Przykładem może być nowa kampania lub reklama wprowadzona w interfejsie, ale nieobsługiwana w wersji interfejsu API, o którą wysyłasz zapytanie.
Oto kilka kwestii, o których warto pamiętać:
- Zasób z typem
UNKNOWNmoże być obsługiwany później lub pozostaćUNKNOWNna czas nieokreślony. - Nowe obiekty z typem
UNKNOWNmogą pojawić się w dowolnym momencie. Te obiekty są zgodne wstecznie, ponieważ wartość wyliczenia jest już dostępna. Zasoby są wprowadzane w ramach tej zmiany, gdy są dostępne, aby zapewnić dokładny wgląd w Twoje konto. ZasóbUNKNOWNmoże pojawić się z powodu nowych działań na koncie za pomocą innych interfejsów lub gdy zasób nie jest już obsługiwany. - Do zasobów
UNKNOWNmogą być dołączone szczegółowe dane, które można wysyłać. - Zasoby
UNKNOWNsą zwykle w pełni widoczne w interfejsie Google Ads. - Zasobów
UNKNOWNna ogół nie można modyfikować.
Podział na segmenty
Odpowiedź będzie zawierać 1 GoogleAdsRow na każdą kombinację tych elementów:
- instancja głównego zasobu określonego w klauzuli
FROM - wartość każdego wybranego pola
segment
Na przykład odpowiedź na zapytanie, które wybiera FROM campaign i ma segments.ad_network_type oraz segments.date w klauzuli SELECT, będzie zawierać 1 wiersz na każdą kombinację tych elementów:
campaignsegments.ad_network_typesegments.date
Wyniki są niejawnie segmentowane według każdej instancji głównego zasobu, a nie według wartości poszczególnych wybranych pól. Na przykład
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
wyniki w 1 wierszu na kampanię, a nie w 1 wierszu na każdą unikalną wartość pola
campaign.status.