一括アップロード

Google 広告スクリプトを使用すると、CSV 形式でデータをアップロードして、アカウントに一括変更を加えることができます。Google ドライブ、Google スプレッドシート、Microsoft Excel スプレッドシートから CSV ファイルでデータをアップロードでき、スクリプトによる実行時の一括アップロード リクエストを作成することも可能です。このガイドでは、この機能をスクリプトで使用する方法について説明します。

用途

一括アップロードを使用すると、キャンペーンの管理やオフライン コンバージョンのアップロードなど、Google 広告スクリプトでは直接サポートされていない種類の変更を行うことができます。

Google ドライブからの一括アップロードの作成

一括アップロード機能を使用する最も簡単な方法は、Google ドライブに CSV ファイルをアップロードし、Google 広告スクリプトを使用してそのファイルを Google 広告にアップロードすることです。

const file = DriveApp.getFilesByName("BulkCampaignUpload.csv")
    .next();
const upload = AdsApp.bulkUploads().newFileUpload(file);
upload.forCampaignManagement();
upload.preview();

これにより、アカウントの [ツールと設定] > [一括操作] > [アップロード] に一括アップロードのプレビュー エントリが作成されます。

[プレビュー] リンクをクリックして、変更内容を確認します。

アカウントに変更を適用するには、詳細ページの [変更を適用] ボタンをクリックします。アップロードしたファイルにエラーがある場合や、変更を適用しない場合は、[プレビューを破棄] ボタンをクリックして変更を破棄します。

スクリプトが正しく動作することを確認したら、プレビュー ステージをスキップして、スクリプトから直接変更を適用できます。これを行うには、preview() メソッドではなく、一括アップロード インスタンスの apply() メソッドを呼び出します。

一括アップロードの新規作成

一括アップロード ジョブをゼロから作成する方法は次のとおりです。

// The best way to find column names is to consult a template
// as described in the last section of this guide.
const columns = [
   "Campaign", "Budget", "Bid Strategy type", "Campaign type"
];

const upload = AdsApp.bulkUploads().newCsvUpload(columns);

// Call append once for each row you'd like to upload
upload.append({
   "Campaign": "Test Campaign 1",
   "Budget": 2.34,
   "Bid Strategy type": "cpc",
   "Campaign type": "Search Only"
});
upload.forCampaignManagement();
upload.preview();

通貨単位の設定

デフォルトでは、一括アップロードの金額は実際の通貨額として解釈されます。マイクロ単位を使用する場合は、アップロード ジョブの作成時に moneyInMicros オプションを true に設定します(たとえば、2.34 ユーロは 2340000 と入力します)。

const upload = AdsApp.bulkUploads().newCsvUpload(columns,
    {moneyInMicros: true});

ファイル ロケールの設定

デフォルトでは、CSV ファイルの内容は米国英語の言語 / 地域(en_US)で解釈されます。fileLocale オプションを使用して別のロケールを指定できます。

const upload = AdsApp.bulkUploads().newCsvUpload(columns,
    {fileLocale: "fr_FR"});

ロケールを指定する場合は、en_US ロケールまたは fileLocale プロパティで指定したロケールのいずれかで列ヘッダーを指定できます。

タイムゾーンを設定する

デフォルトでは、ファイル内の時間エントリは America/Los_Angeles で解釈されます。timeZone オプションを使用して別のタイムゾーンを指定できます。TZ データベース形式でタイムゾーンを指定します。

const upload = AdsApp.bulkUploads().newCsvUpload(columns,
    {timeZone: "America/New_York"});

タイムゾーンを設定すると、オフライン コンバージョンをアップロードする際に便利です。

一括アップロード用のスプレッドシート テンプレート

一括アップロード用のスプレッドシート テンプレートを最も簡単に入手するには、Google 広告 管理画面を使います。

  • Google 広告アカウントにログインします。
  • [ツールと設定] > [一括操作] > [アップロード] に移動します。
  • [+] ボタンをクリックして、新しいアップロードを開始します。
  • さまざまなテンプレートを選択できるセクションが表示されます。

ヘルプセンターからさまざまなテンプレートをダウンロードすることもできます。