דיווח

הדוחות מספקים מידע על כל המשאבים השונים בחשבון. תוכל לאחזר מידע על קמפיינים, קבוצות מודעות והנתונים הסטטיסטיים שלהם, היסטוריית שינויים בחשבון ועוד. תשתית הדיווח מגובה על ידי 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 כדי לראות את כל ההגדרות האפשריות.