Reporting

レポートには、アカウント内のさまざまなリソースに関する情報がすべて含まれます。キャンペーン、広告グループとその統計情報、アカウントの変更履歴などに関する情報を取得できます。レポート作成のインフラストラクチャは Google Ads API を基盤としており、設定するフィールド、指標、条件を GAQL を使って指定します。

報告には主に 2 つのメカニズムがあります。どちらも同じ種類のクエリを受け入れますが、結果を返す方法が大きく異なります。

どちらの場合も、次のクエリを使用します。

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.idrow.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 のドキュメントをご覧ください。