Większość usług udostępnia synchroniczne interfejsy API, które wymagają wysłania żądania i oczekiwania na odpowiedź, ale BatchJobService
umożliwia przeprowadzanie wsadów operacji na wielu usługach bez synchronicznego oczekiwania na ich zakończenie.
W przeciwieństwie do operacji mutacji związanych z poszczególnymi usługami 1 zadanie w BatchJobService
może działać na podstawie różnych kampanii, grup reklam, reklam, kryteriów, etykiet i elementów pliku danych.
Przesłane zadania są uruchamiane równolegle, a BatchJobService
automatycznie ponawia operacje, które kończą się niepowodzeniem z powodu błędów przejściowych, takich jak błędy limitu liczby żądań. Interfejs Google Ads API nadal będzie wliczać każdą operację do dziennego limitu operacji zgodnie z instrukcjami zliczania operacji interfejsu API.
Dodatkowo BatchJobService
umożliwia używanie w żądaniach tymczasowych identyfikatorów, aby można było przesyłać operacje zależne w jednym zadaniu.
Operacje
BatchJobService
obsługuje wszystkie operacje wymienione w zadaniu MutateOperation
, z kilkoma ważnymi wyjątkami.
Interfejs Google Ads API wykonuje wszystkie operacje w zadaniu z włączonym częściowym niepowodzeniem. Jeśli zadanie zostanie anulowane lub nieudane operacje, zakończone powodzeniem nie zostaną wycofane.
Poniższe operacje w zadaniu MutateOperation
muszą być niepodzielne, dlatego nie obsługują częściowych błędów i nie są obsługiwane w zadaniach wsadowych. Unikaj dodawania ich do zadań, ustaw w żądaniach właściwość partial_failure
na false
i zamiast niej używaj metody mutate
w GoogleAdsService
.
Nieobsługiwane operacje w usłudze BatchJobService
AssetGroupOperation
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation