ज़्यादातर सेवाएं, सिंक्रोनस एपीआई उपलब्ध कराती हैं. इनके लिए, आपको अनुरोध करना पड़ता है और फिर जवाब का इंतज़ार करना पड़ता है. हालांकि, BatchJobService, कई सेवाओं पर एक साथ कई कार्रवाइयां करने का तरीका उपलब्ध कराता है. इसके लिए, आपको कार्रवाइयों के पूरा होने का इंतज़ार नहीं करना पड़ता.
सेवा के हिसाब से म्यूटेट ऑपरेशन के उलट, BatchJobService में एक ही जॉब, कैंपेन, विज्ञापन ग्रुप, विज्ञापनों, शर्तों, लेबल, और ऐसेट के मिले-जुले कलेक्शन के लिए काम कर सकता है. सबमिट की गई जॉब एक साथ चलती हैं. साथ ही, BatchJobService उन कार्रवाइयों को अपने-आप फिर से शुरू करता है जो कुछ समय के लिए होने वाली गड़बड़ियों की वजह से पूरी नहीं हो पाती हैं. जैसे, अनुरोध संख्या सीमित करने से जुड़ी गड़बड़ियां. Google Ads API, एपीआई ऑपरेशन की गिनती करने के निर्देशों का पालन करते हुए, अब भी हर ऑपरेशन को आपकी रोज़ाना की ऑपरेशन सीमा में शामिल करता है.
BatchJobService आपको अपने अनुरोधों में अस्थायी आईडी इस्तेमाल करने की सुविधा भी देता है. इससे, एक ही जॉब में डिपेंडेंट ऑपरेशन सबमिट किए जा सकते हैं.
कार्रवाइयां
BatchJobService, MutateOperation में मौजूद उन सभी कार्रवाइयों के साथ काम करता है जिनकी मुख्य सेवा, कुछ कार्रवाइयों के पूरा न होने के साथ-साथ AssetGroupOperation और AssetGroupListingGroupFilterOperation के साथ काम करती है. इन्हें साफ़ तौर पर छूट दी गई है और ऐटॉमिक सब-बैच में (एक-दूसरे पर निर्भर कार्रवाइयों के साथ) लागू किया गया है.
Google Ads API, आंशिक गड़बड़ी की सुविधा चालू होने पर, किसी जॉब में स्टैंडर्ड कार्रवाइयां करता है. हालांकि, ऐटॉमिक सब-बैच में ऐसा नहीं होता. अगर कोई जॉब रद्द हो जाता है या अलग-अलग कार्रवाइयां पूरी नहीं हो पाती हैं, तो पूरी हो चुकी कार्रवाइयां रोल बैक नहीं की जाती हैं.
MutateOperation में ये कार्रवाइयां ऐटॉमिक होनी चाहिए. साथ ही, इनमें कुछ कार्रवाइयां पूरी न होने की सुविधा काम नहीं करती. इसलिए, इन्हें बैच जॉब में इस्तेमाल नहीं किया जा सकता. इनमें से किसी भी कार्रवाई को बैच जॉब में जोड़ने पर,
MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE
गड़बड़ी (या BookCampaignsOperation और
QuoteCampaignsOperation के लिए InternalError.INTERNAL_ERROR)
दिखती है. इसके बजाय, partial_failure को false पर सेट करके, GoogleAdsService.Mutate का इस्तेमाल करके उन्हें लागू करें. साथ ही, QuoteCampaignsOperation के लिए validate_only को true पर सेट करें.
BatchJobService में काम न करने वाले ऑपरेशन
BookCampaignsOperation(MutateOperationमें उपलब्ध है)CampaignConversionGoalOperationConversionGoalCampaignConfigOperationCustomConversionGoalOperationCustomerConversionGoalOperationCustomerOperationQuoteCampaignsOperation(MutateOperationमें उपलब्ध है; इसके लिए,validate_onlyकोtrueपर सेट करना ज़रूरी है)