このガイドでは、個々のエンティティを別々のリクエストで作成するのではなく、キャンペーン全体を 1 つのアトミック リクエストで作成することを前提としています。つまり、リソースを相互にリンクするには、一時 ID を設定して使用する必要があります。
この設定で、すべてのオペレーションを保持する配列を作成します。
const operations = [];
キャンペーンを作成するお客様のお客様 ID は、すべてのリソース名で必要になるため、頻繁に必要になります。
const customerId = AdsApp.currentAccount().getCustomerId();
新しいオペレーションを作成するたびに、リソース名で次の一時 ID を使用します。これにより、後でこのオブジェクトを参照し、作成したオブジェクトを配列に挿入できます。
const newOperation = {
[OPERATION_TYPE_VARIES]: {
create: {
resourceName: `customers/${customerId}/[EXACT_PATH_VARIES]/${getNextTempId()}`
// Other fields, relevant to the resource being created.
}
}
}
operations.push(newOperation);
詳しくは、Google Ads API REST mutate のドキュメントで例をご覧ください。
すべてのオペレーションを構築したら、単一のバッチで実行します。
AdsApp.mutateAll(operations);