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();
通貨単位の設定
デフォルトでは、一括アップロードの金額は実際の通貨の金額として解釈されます。micros を使用する場合は、アップロード ジョブの作成時に moneyInMicros
オプションを true
に設定できます(たとえば、€2.34 は 2, 340, 000 と入力されます)。
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 広告アカウントにログインします。
- [ツールと設定] > [一括操作] > [アップロード] に移動します。
- [+] ボタンをクリックして、新しいアップロードを開始します。
- 選択できるさまざまなテンプレートが表示されます。
ヘルプセンターからさまざまなテンプレートをダウンロードすることもできます。