批次處理

雖然大多數服務都提供同步 API,需要您提出要求並等待回應,但 BatchJobService 可讓您對多項服務執行批次作業,而不必同步等待作業完成。

與服務專屬的變動作業不同,BatchJobService 中的單一工作可對廣告活動、廣告群組、廣告、條件、標籤和素材資源的混合集合執行作業。提交的工作會平行執行,BatchJobService 會自動重試因暫時性錯誤 (例如頻率限制錯誤) 而失敗的操作。Google Ads API 仍會根據 API 作業計算操作說明,將每項作業計入每日作業限制。

BatchJobService 也允許您在要求中使用臨時 ID,以便在單一工作中提交相依作業。

作業

BatchJobService 支援 MutateOperation 中列出的所有作業,這些作業的基礎服務支援部分失敗,以及AssetGroupOperation 和 AssetGroupListingGroupFilterOperation,這些作業會明確豁免,並在完整子批次中執行 (連同相關的互依作業)。

Google Ads API 會在啟用部分失敗的工作中執行標準作業 (原子子批次除外),因此如果工作取消或個別作業失敗,成功的作業不會復原。

MutateOperation 中的下列作業必須是不可分割,且不支援部分失敗,因此不支援批次工作。如果將上述任何作業加入批次工作,系統會傳回 MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE 錯誤 (如果是 BookCampaignsOperation 和 QuoteCampaignsOperation,則會傳回 InternalError.INTERNAL_ERROR)。請改用 GoogleAdsService.Mutate 執行這些作業,並將 partial_failure 設為 false (如果是 QuoteCampaignsOperation,則將 validate_only 設為 true)。

BatchJobService 不支援的操作