広告の種類:

Google 広告は、テキスト広告、イメージ広告、モバイル広告など、さまざまな広告の種類に対応しています。 このガイドでは、Google 広告スクリプトを使用して広告の作成、取得、レポート作成を行う方法について説明します。Google 広告 で使用できるすべての広告の種類の概要については、API ガイドをご覧ください。

動画を作成

スクリプトでは、AdGroup インスタンスで newAd() メソッドを使用して広告を作成できます。これは、サポートされている広告タイプのビルダーを作成する AdBuilderSpace を返します。

次のコードは、拡張テキスト広告の作成方法を示しています。

let adOperation = adGroup.newAd().expandedTextAdBuilder()
    .withHeadlinePart1("First headline part")
    .withHeadlinePart2("Second headline part")
    .withDescription("Ad description")
    .withFinalUrl("http://www.example.com")
    .withPath1("path1") // optional
    .withPath2("path2") // optional
    .build();

検査

すべての広告の種類に関連付けられた情報の一部(広告の ID や承認状況など)は、Ad からすぐに確認できます。また、すべての広告は一時停止、有効化、削除することができます。

拡張テキスト広告の説明など、広告の種類に固有のフィールドにアクセスするには、asType() メソッドを使用して AdViewSpace を作成します。これにより、タイプ固有のメソッドを公開する Ad の拡張バージョンにアクセスできます。

次のスニペットは、すべての拡張テキスト広告の説明を取得します。

const iterator = AdsApp.ads().withCondition("Type = EXPANDED_TEXT_AD").get();
while (iterator.hasNext()) {
  let ad = iterator.next();
  let expandedTextAd = ad.asType().expandedTextAd();
  let description = expandedTextAd.getDescription();
}

条件 Type = EXPANDED_TEXT_AD によって、イテレータからのすべての広告が拡張テキスト広告になります。誤ったタイプで広告を表示しようとすると、エラーが発生してスクリプトの実行が停止されます。そのため、タイプ別のフィールドは、広告タイプがわかっている場合にのみ表示することが重要です。

次のスニペットは、Ad.isType() メソッドを使用して広告が正しいタイプかどうかを判断する方法を示しています。

if (ad.isType().expandedTextAd()) {
  let expandedTextAd = ad.asType().expandedTextAd();
  let headlinePart1 = expandedTextAd.getHeadlinePart1();
  let headlinePart2 = expandedTextAd.getHeadlinePart2();
}

レポート

ad_group_ad ビューは、ad_group_ad.expanded_text_ad.headline_part1 などの通常の統計情報に加えて、タイプ固有の広告フィールドをクエリするためにも使用できます。次のスニペットは、広告見出し 1 に「Discount Sales」を含むすべての拡張テキスト広告の統計情報を取得する方法を示しています。

const results = AdsApp.search(
  "SELECT ad_group_ad.ad_group.id, " +
         "ad_group_ad.id, " +
         "ad_group_ad.expanded_text_ad.headline_part1, " +
         "ad_group_ad.expanded_text_ad.headline_part2, " +
         "metrics.clicks, " +
         "metrics.impressions, " +
         "metrics.cost" +
  "FROM ad_group_ad " +
  "WHERE ad_group_ad.expanded_text_ad.headline_part1 = 'Discount Sales' " +
    "AND segments.date DURING LAST_7_DAYS");

while (results.hasNext()) {
  let row = results.next();
  let headlinePart1 = row.adGroupAd.expandedTextAd.headlinePart1;
  let headlinePart2 = row.adGroupAd.expandedTextAd.headlinePart2;
  ...
}

スクリプトでの報告について詳しくは、レポートガイドをご覧ください。