アセット

P-MAX キャンペーンを作成する前に、キャンペーンで使用する予定のすべてのアセットをインポートすることが重要です。アセットは後からいつでも追加できますが、最初にアセット一式が必要になります。

P-MAX キャンペーンのアセットアセットの要件を確認して、キャンペーンの計画を立ててください。

テキスト アセットと画像アセットは主な必須アセットタイプであるため、このガイドではそれぞれをアップロードする方法について説明します。これらの原則は、他のアセットタイプにも拡張できます。作成するアセットの種類に関係なく、AssetOperation を使用して作成します。

変換を使用せずに AdsApp を使用してアセットを作成することもできますが、整合性を保つため、このガイドでは残りのオペレーションと同様に作成します。既存のアセットがすでにある場合は、そのアセットを再利用できます。そのため、P-MAX キャンペーンの作成にはアセットが必要ですが、キャンペーンの作成プロセスで作成することは必ずしも必要ではありません。

テキスト アセット

テキスト アセットの仕組みは他の操作と変わりません。キャンペーン作成プロセスの一環としてアセットをアップロードする場合は、一時 ID を使用します。それ以外の場合は、アセットを参照してアセット グループに追加する必要があるときに、今後のオペレーションで使用するために、返されたリソース名をメモしておきます。

const textAsset = {
  "assetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
      "textAsset": {
        "text": "Travel the World"
      }
    }
  }
}
operations.push(textAsset);

画像アセット

画像アセットは base-64 エンコード形式でアップロードされます。Google 広告スクリプトに画像を直接アップロードすることはできないため、画像データを取得してアップロード用にエンコードするには、2 つの方法があります。

Google ドライブから画像を取得するには、まずその ID が必要です。ID を使用すると、画像を一意に識別できます。ID を取得する 1 つの方法は、Google ドライブ UI から共有可能なリンクをコピーして ID を抽出することです。一連のファイルをプログラムで取得して、アップロードするファイルを選択することもできます。次のコードは、既知の ID を持つ単一の画像をアップロードする方法を示しています。

const file = DriveApp.getFileById(fileId);
const imageAsset =  {
  "assetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
      "name": "Marketing Logo",
      "type": "IMAGE",
      "imageAsset": {
        "data": Utilities.base64Encode(file.getBlob().getBytes())
      }
    }
  }
}

別の方法として、UrlFetchApp を使用して、ウェブサーバーでホストされている画像を URL で取得することもできます。

const file = UrlFetchApp.fetch(imageUrl);

次に、ドライブのファイルの場合と同様に、このファイルで getBlob を呼び出すことができるため、オペレーションの構成は Google ドライブのファイルの手順と同じです。