虽然大多数服务都提供同步 API,要求您发出请求然后等待响应,但 BatchJobService
可以对多项服务执行批量操作,而无需同步等待操作完成。
与特定于服务的 mutate 操作不同,BatchJobService
中的单个作业可以处理由广告系列、广告组、广告、条件、标签和 Feed 项组成的混合集合。已提交的作业会并行运行,并且 BatchJobService
会自动重试由于暂时性错误(例如速率限制错误)而失败的操作。Google Ads API 仍会按照 API 操作计数说明将每项操作计入每日操作限制。
此外,借助 BatchJobService
,您还可以在请求中使用临时 ID,以便在单个作业中提交非独立操作。
运维
BatchJobService
支持 MutateOperation
中列出的所有操作,但有一些重要的例外情况。
由于 Google Ads API 在启用了部分失败的作业中执行所有操作,因此如果作业取消或个别操作失败,则成功的操作不会回滚。
MutateOperation
中的以下操作必须是原子化,因此不支持部分失败,并且在批量作业中也不受支持。请避免将它们添加到您的作业中,请在请求中将 partial_failure
设置为 false
,并改用 GoogleAdsService
中的 mutate
方法。
BatchJobService 不支持的操作
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation