Większość usług udostępnia synchroniczne interfejsy API, które wymagają wysłania żądania i oczekiwania na odpowiedź, ale BatchJobService
umożliwia wykonywanie zbiorczych 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 jedno 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 działają równolegle, a BatchJobService
automatycznie ponawia próby, które zakończyły 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, które pozwalają przesyłać operacje zależne w ramach jednego zadania.
Operacje
BatchJobService
obsługuje wszystkie operacje wymienione w MutateOperation
z kilkoma ważnymi wyjątkami.
Interfejs Google Ads API wykonuje wszystkie operacje w zadaniu z włączoną opcją częściowa porażka, więc jeśli zadanie zostanie anulowane lub poszczególne operacje zakończą się niepowodzeniem, operacje zakończone powodzeniem nie zostaną wycofane.
Poniższe operacje w 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 wartość partial_failure
na false
, a zamiast tego używaj metody mutate
w GoogleAdsService
.
Nieobsługiwane operacje w usłudze BatchJobService
AssetGroupOperation
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation