Отчеты содержат информацию о всех ресурсах в вашем аккаунте. Вы можете получать информацию о кампаниях, группах объявлений и их статистике, историю изменений в аккаунте и многое другое. Инфраструктура отчетов поддерживается Google Ads API и использует GAQL для указания полей, показателей и условий, которые вы хотите задать.
Отчеты и поиск
Существует два основных механизма создания отчетов. Оба сервиса принимают одинаковые запросы, но по-разному возвращают результаты.
В обоих случаях мы будем использовать следующий запрос:
SELECT
campaign.id,
campaign.status,
metrics.clicks,
metrics.impressions,
customer.id
FROM campaign
WHERE
metrics.impressions > 0
AdsApp.report()- Вы получите результаты поиска в виде словаря. Вы можете обращаться к полям, как если бы вы использовали словарь, например
row["campaign.id"]иrow["metrics.impressions"]напрямую. Этот формат позволяет экспортировать результаты непосредственно в таблицу с помощью методаexportToSheet(). Это не формат по умолчанию, в котором Google Ads API возвращает результаты, поэтому в некоторых случаях отдельные поля могут быть недоступны. В этом случае используйтеsearch. AdsApp.search()- Вы получите список объектов
GoogleAdsRowс различными полями, у каждого из которых могут быть подполя. Чтобы получить данные, вы будете использоватьrow.campaign.idиrow.metrics.impressions. Этот формат обычно удобнее, если вы планируете обрабатывать данные программно. Некоторые поля могут быть доступны только в форматеsearch, если их нельзя преобразовать в плоское представление.
Пример отчета
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"];
}
Подробную информацию об использовании этого представления можно найти в документации по AdsApp.report.
Пример поискового запроса
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;
}
Полный список возможных настроек приведен в документации по Adsapp.search.