Raportowanie

Raporty zawierają informacje o różnych zasobach na Twoim koncie. Możesz pobierać informacje o kampaniach, grupach reklam i ich statystykach, historii zmian na koncie i nie tylko. Infrastruktura raportowania jest obsługiwana przez interfejs Google Ads API i korzysta z języka GAQL do określania pól, danych i warunków, które chcesz ustawić.

Istnieją 2 główne mechanizmy raportowania. Oba te zapytania akceptują te same rodzaje zapytań i różnią się głównie sposobem zwracania wyników.

W obu przypadkach użyjemy tego zapytania:

SELECT
  campaign.id,
  campaign.status,
  metrics.clicks,
  metrics.impressions,
  customer.id
FROM campaign
WHERE
  metrics.impressions > 0
AdsApp.report()
Zwróci to płaską, przypominającą słownikową reprezentację wyników wyszukiwania. Do pól możesz uzyskiwać dostęp bezpośrednio, tak jak w słowniku, np. row["campaign.id"]row["metrics.impressions"]. Dzięki temu formatowi możesz wyeksportować wyniki bezpośrednio do arkusza kalkulacyjnego, korzystając z metody exportToSheet(). Nie jest to natywny format, w którym interfejs Google Ads API zwraca wyniki, więc w niektórych przypadkach niektóre pola mogą być niedostępne w tym formacie. W takim przypadku należy użyć elementu search.
AdsApp.search()
Zwróci to listę obiektów GoogleAdsRow, które mają różne pola, każde z nich może mieć pola podrzędne. Aby pobrać dane, musisz użyć funkcji row.campaign.idrow.metrics.impressions. Jest to zwykle przydatne, jeśli planujesz przetwarzanie danych programowo, a niektóre pola mogą być dostępne tylko w formacie search, jeśli nie można ich przekonwertować na reprezentację płaską.

Przykład raportu

let report = AdsApp.report(
    "SELECT " +
    " ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions " +
    "FROM search_term_view " +
    "WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");

let rows = report.rows();
while (rows.hasNext()) {
    let row = rows.next();
    let query = row["search_term_view.search_term"];
    let impressions = row["metrics.impressions"];
}

Szczegółowe informacje o używaniu tego widoku znajdziesz w dokumentacji dotyczącej AdsApp.report.

Przykład wyszukiwania

let search = AdsApp.search(
    "SELECT " +
    " ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions " +
    "FROM search_term_view " +
    "WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");

while (search.hasNext()) {
    let row = search.next();
    let query = row.searchTermView.searchTerm;
    let impressions = row.metrics.impressions;
}

Pełną listę wszystkich ustawień znajdziesz w dokumentacji Adsapp.search.