素材資源

建立需求開發廣告活動前,請務必先匯入所有要在廣告活動中使用的素材資源。您隨時可以返回並新增素材資源,但必須先有一組素材資源才能開始。

規劃廣告活動時,請參閱需求開發廣告活動的素材資源規格和最佳做法指南。

圖片和影片素材資源是主要素材資源類型,本指南將說明如何上傳這兩種素材資源。這些原則也適用於其他素材資源類型。無論您要建立哪種類型的素材資源,請使用 AssetOperation 建立。

您可以使用 AdsApp 建立素材資源,而不使用 mutate,但為了保持一致,本指南會採用與所有其他作業相同的方式。請注意,如果您已有可用的素材資源,可以且應該重複使用。因此,雖然您必須有素材資源才能建立需求開發廣告活動,但可能不一定要在廣告活動建立過程中「建立」素材資源。

圖片素材資源

圖片素材資源會以 base-64 編碼格式上傳。由於您無法直接將圖片上傳至 Google Ads 指令碼,因此可以選擇兩種不同的方法來取得圖片資料,並將其編碼以上傳。

如要從 Google 雲端硬碟擷取圖片,首先需要圖片的ID,這是唯一識別圖片的最佳方式。其中一個方法是從 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,透過網址擷取網路伺服器上託管的圖片:

const file = UrlFetchApp.fetch(imageUrl);

接著,您就可以像處理雲端硬碟檔案一樣,對這個檔案呼叫 getBlob,因此作業建構方式與 Google 雲端硬碟檔案的步驟相同。

影片素材資源

影片素材資源是透過 YouTube 影片管理。如果是在建立廣告活動的過程中上傳素材資源,請使用臨時 ID。否則,請記下傳回的資源名稱,以便在日後的作業中參照該素材資源,並將其新增至素材資源群組。

const videoAsset = {
  "assetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
      "name": "Marketing video",
      "type": "YOUTUBE_VIDEO",
      "youtube_video_asset": {
        "youtube_video_title": "Demand Gen video",
        "youtube_video_id": "123456789"
      }
    }
  }
}
operations.push(videoAsset);