گزارش

گزارش‌ها اطلاعاتی درباره همه منابع مختلف در حسابتان ارائه می‌دهند. می‌توانید اطلاعات مربوط به پویش‌ها، گروه‌های آگهی، و آمار آن‌ها را واکشی کنید، سابقه تغییرات حسابتان را ببینید، و کارهای دیگری انجام دهید. زیرساخت گزارش‌دهی توسط 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 مراجعه کنید.