遷移

新的 Google Ads 指令碼基礎架構是以 Google Ads API 為基礎。由於該 API 的不同架構,您可能需要更新現有的指令碼。我們已盡全力確保盡可能回溯相容,因此應該微幅更動。

報表

許多 AWQL 報表仍能繼續運作。在背景中,指令碼會在使用新基礎架構時,將 AWQL 查詢轉換為 GAQL (Google Ads API 的新查詢語言),針對新的後端執行該查詢,然後將結果轉換回 AWQL 報表原先使用的格式。使用 GAQL 的查詢會依原樣傳遞。

因此,建議您檢查指令碼,並盡可能將 AWQL 查詢更新為 GAQL。您可以使用與指令碼相同的查詢遷移工具,來決定特定 AWQL 查詢的 GAQL 查詢,也可以使用互動式查詢建構工具建構查詢。

以下是自動從 AWQL 到 GAQL 翻譯的幾項限制:

  • 並非所有 AWQL 查詢都能明確轉譯為 GAQL 查詢。在這些情況下,系統會記錄錯誤訊息,其中包含一些錯誤詳情,協助您手動修正。
  • GAQL 不支援 AWQL 提供的部分報表類型。
  • GAQL 不支援「零曝光列」。指定報表應納入零曝光時,會導致錯誤。
  • 有些模稜兩可的欄位無法用於篩選器。舉例來說,「廣告標題」可以參照任意數量的不同廣告欄位。
  • 部分欄位可能會傳回不同格式的結果,例如將一項結果拆分為多個資料欄。

整理選取器

使用指令碼擷取資源時,我們通常會使用 withConditionorderBy 呼叫來限製或排序疊代器中的結果。這些呼叫中的欄位現在會使用新的 Google Ads API 名稱。舉例來說,如要按廣告活動名稱篩選,您先前會使用:

.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')

現在,請盡可能針對以下條件使用新的欄位名稱:

.withCondition('campaign.name = "SOME_CAMPAIGN_NAME"')

儘管如此,我們一直致力於加入舊名稱對應至新名稱,因此如果您的指令碼仍在使用 CampaignName,會在執行階段自動替換為 campaign.name,以確保指令碼仍可正常運作。如果您遇到任何舊樣式名稱的問題,請先更新指令碼,先使用新的樣式名稱做為疑難排解步驟。

限制

許多限制與舊版基礎架構相同,在這裡所做的變更通常有助提升效能。

  • 但時間限制相同。指令碼可能會執行 30 分鐘,
  • 單一疊代器預設會傳回 50,000 個實體,但這可以覆寫。這個 50,000 這項限制先前無法自訂。
  • 一個選取器最多可處理 10,000 個 ID (未變更)。
  • 新基礎架構對單一指令碼可處理的實體數量沒有限制。原先的上限為 250,000 個。
  • 新基礎架構對每次執行可建立的關鍵字或廣告數量沒有限制。原先的上限為 250,000 個。
  • 記錄輸出會截斷 100 KB (未變更)。
  • Apps Script 服務 (SheetApp、MailApp 等) 的配額維持不變。
  • 系統會像使用 API 一樣強制執行 Google Ads 配額。也就是說,您的指令碼受 API 頻率限制,但可讓您更靈活地存取更多報表,或在每次執行時執行更多變更。

其他異動

ExecutionInfo 不會再公開 getRemainingCreateQuota()getRemainingGetQuota(),因為新版服務不再適用這些配額。