Alors que la plupart des services fournissent des API synchrones qui vous obligent à envoyer une requête et à attendre une réponse, BatchJobService
vous permet d'effectuer des lots d'opérations sur plusieurs services sans attendre de manière synchrone la fin des opérations.
Contrairement aux opérations de mutation spécifiques à un service, un seul job dans BatchJobService
peut fonctionner sur une collection mixte de campagnes, de groupes d'annonces, d'annonces, de critères, de libellés et d'éléments de flux.
Les jobs envoyés s'exécutent en parallèle, et BatchJobService
relance automatiquement les opérations qui échouent en raison d'erreurs temporaires telles que les erreurs de limite de débit. L'API Google Ads comptabilise toujours chaque opération dans votre limite d'opérations quotidiennes, en suivant les instructions de comptabilisation des opérations d'API.
BatchJobService
vous permet également d'utiliser des ID temporaires dans vos requêtes afin de pouvoir envoyer des opérations dépendantes dans une seule tâche.
Opérations
BatchJobService
est compatible avec toutes les opérations listées dans MutateOperation
, à quelques exceptions importantes près.
Étant donné que l'API Google Ads exécute toutes les opérations d'un job avec l'option Échec partiel activée, si un job est annulé ou si des opérations individuelles échouent, les opérations qui ont réussi ne seront pas annulées.
Les opérations suivantes dans MutateOperation
doivent être atomiques et, par conséquent, ne sont pas compatibles avec les échecs partiels et ne sont pas acceptées dans les jobs par lot. Évitez d'ajouter ces opérations à vos jobs, définissez partial_failure
sur false
dans vos requêtes et utilisez plutôt la méthode mutate
dans GoogleAdsService
.
Opérations non acceptées dans BatchJobService
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation