Większość usług udostępnia synchroniczne interfejsy API, które wymagają wysłania żądania
i poczekania na odpowiedź. BatchJobService umożliwia
wykonywanie partii operacji w wielu usługach bez synchronicznego
czekania na ich zakończenie.
W przeciwieństwie do operacji modyfikacji specyficznych dla usługi pojedyncze zadanie w
BatchJobService może działać na mieszanym zbiorze
kampanii, grup reklam, reklam, kryteriów, etykiet i komponentów. Przesłane zadania są wykonywane równolegle, a BatchJobService automatycznie ponawia operacje, które nie powiodły się z powodu przejściowych błędów, takich jak błędy ograniczania liczby żądań. Interfejs
Google Ads API nadal liczy każdą operację w ramach
dziennego limitu operacji zgodnie z
instrukcjami dotyczącymi zliczania operacji API.
BatchJobService umożliwia też używanie
tymczasowych identyfikatorów w żądaniach, dzięki czemu możesz przesyłać zależne
operacje w jednym zadaniu.
Operacje
BatchJobService obsługuje wszystkie operacje wymienione w
MutateOperation, których podstawowa usługa obsługuje
częściowe niepowodzenie, a także
AssetGroupOperation i
AssetGroupListingGroupFilterOperation, które są
wyraźnie wyłączone i wykonywane (wraz z powiązanymi operacjami współzależnymi)
w niepodzielnych podpartiach.
Ponieważ interfejs Google Ads API wykonuje standardowe operacje w zadaniu z częściowym niepowodzeniem włączonym (z wyjątkiem niepodzielnych podpartii), jeśli zadanie zostanie anulowane lub poszczególne operacje nie powiodą się, operacje, które się powiodły, nie zostaną wycofane.
Te operacje w MutateOperation muszą być
niepodzielne i nie obsługują częściowego niepowodzenia, dlatego nie są
obsługiwane w zadaniach wsadowych. Dodanie którejkolwiek z tych operacji do zadania wsadowego
spowoduje zwrócenie błędu
MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE (lub InternalError.INTERNAL_ERROR w przypadku
BookCampaignsOperation i
QuoteCampaignsOperation). Zamiast tego wykonaj je za pomocą
GoogleAdsService.Mutate z ustawioną wartością partial_failure na
false (a w przypadku
QuoteCampaignsOperation ustaw wartość validate_only na true).
Operacje nieobsługiwane w BatchJobService
BookCampaignsOperation(dostępna wMutateOperation)CampaignConversionGoalOperationConversionGoalCampaignConfigOperationCustomConversionGoalOperationCustomerConversionGoalOperationCustomerOperationQuoteCampaignsOperation(dostępna wMutateOperation; wymagavalidate_onlyustawienia natrue)