Większość usług udostępnia synchroniczne interfejsy API, które wymagają wysłania żądania i oczekiwania na odpowiedź. BatchJobService
umożliwia wykonywanie partii operacji w wielu usługach bez synchronicznego oczekiwania na ich zakończenie.
W odróżnieniu od operacji zmiany dotyczących konkretnych usług pojedyncze zadanie w BatchJobService
może działać na mieszanej kolekcji kampanii, grup reklam, reklam, kryteriów, etykiet i elementów pliku danych.
Przesłane zadania są wykonywane równolegle, a BatchJobService
automatycznie ponawia operacje, które nie powiodły się z powodu tymczasowych błędów, takich jak błędy związane z limitem liczby żądań. Interfejs Google Ads API nadal wlicza każdą operację do dziennego limitu operacji zgodnie z instrukcjami dotyczącymi zliczania operacji interfejsu API.
BatchJobService
umożliwia też używanie w żądaniach tymczasowych identyfikatorów, dzięki czemu możesz przesyłać zależne operacje w ramach jednego zadania.
Operacje
BatchJobService
obsługuje wszystkie operacje wymienione w MutateOperation
, z kilkoma ważnymi
wyjątkami.
Ponieważ interfejs Google Ads API wykonuje wszystkie operacje w zadaniu z włączonym częściowym niepowodzeniem, jeśli zadanie zostanie anulowane lub poszczególne operacje zakończą się niepowodzeniem, operacje, które się powiodły, nie zostaną wycofane.
Te operacje w MutateOperation
muszą być niepodzielne, a tym samym nie obsługują częściowych błędów i nie są obsługiwane w ramach zadań wsadowych. Unikaj dodawania tych operacji do zadań, ustaw w żądaniach wartość partial_failure
na false
i zamiast tego używaj metody mutate
w GoogleAdsService
.
Nieobsługiwane operacje w usłudze BatchJobService
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation