Selektory

Selektory pomagają programiście tworzyć zapytania, które pobierają żądane jednostki Google Ads. Selektory umożliwiają zawężenie listy pobranych encji i uporządkowanie jej. Większość selektorów ma te metody:

withCondition()
Dodaje warunek do selektora. Jeśli używasz kilku warunków, są one połączone operatorem ORAZ, co oznacza, że selektor zwróci tylko te jednostki, które spełniają wszystkie określone warunki.
withIds()
Dodaje kolekcję identyfikatorów jako warunek. Warunek oparty na identyfikatorze zostanie połączony operatorem ORAZ ze wszystkimi pozostałymi warunkami.
forDateRange()
Jest wymagana, gdy warunek lub klauzula porządkowania odwołuje się do pola Statystyki, np. CTR lub Wyświetlenia. Jeśli poprosisz o wszystkie kampanie z ponad 100 wyświetleniami, skrypty Google Ads będą musiały znać zakres dat, w którym mają szukać.
orderBy()
Określa kolejność zwracanych jednostek.
withLimit()
Ogranicza liczbę zwracanych jednostek do określonej wartości. Jest to szczególnie przydatne w połączeniu z orderBy(), aby pobierać informacje takie jak „10 słów kluczowych z największą liczbą wyświetleń wczoraj”. Domyślnie wszystkie selektory ustawiają limit na 50 000. Możesz zwiększyć limit, ręcznie go określając.

Metody te można wywoływać w dowolnej kolejności. Wyjątkiem jest metoda orderBy(), w przypadku której kolejność wywołań ma znaczenie: wielokrotne wywołania tej metody będą określać wiele klauzul porządkujących, które będą stosowane w odpowiedniej kolejności. Rozważmy ten fragment kodu:

selector = selector.forDateRange("LAST_14_DAYS")
    .orderBy("metrics.clicks DESC")
    .orderBy("metrics.ctr ASC");

Wyniki zostaną posortowane malejąco według liczby kliknięć. Wyniki o równej liczbie kliknięć zostaną posortowane według CTR w kolejności rosnącej.

Wywołania metod selektora można łączyć w łańcuchy. Ten kod

var campaignSelector = AdsApp.campaigns();
campaignSelector.withCondition("metrics.clicks > 10");
campaignSelector.withCondition("metrics.impressions > 1000");
campaignSelector.orderBy("metrics.impressions DESC");
campaignSelector.forDateRange("YESTERDAY");

można zapisać w bardziej zwięzły sposób:

var campaignSelector = AdsApp.campaigns()
  .withCondition("metrics.clicks > 10")
  .withCondition("metrics.impressions > 1000")
  .orderBy("metrics.impressions DESC")
  .forDateRange("YESTERDAY");

Po utworzeniu selektora można uzyskać z niego iterator, wywołując selector.get().

Zapoznaj się ze sprawdzonymi metodami, aby poznać wskazówki i triki dotyczące efektywnego korzystania z selektorów.