في حين أنّ معظم الخدمات توفّر واجهات برمجة تطبيقات متزامنة تتطلّب منك تقديم طلب ثم انتظار الردّ، توفّر BatchJobService طريقة لتنفيذ مجموعات من العمليات على خدمات متعدّدة بدون انتظار اكتمال العمليات بشكل متزامن.
على عكس عمليات التحويل الخاصة بالخدمة، يمكن أن تعمل مهمة واحدة في
BatchJobService على مجموعة مختلطة من
الحملات والمجموعات الإعلانية والإعلانات والمعايير والتصنيفات ومواد العرض. يتم تنفيذ المهام المُرسَلة بالتوازي، ويعيد BatchJobService تلقائيًا محاولة تنفيذ العمليات التي تعذّر إكمالها بسبب أخطاء عابرة، مثل أخطاء تجاوز الحدّ الأقصى المسموح به. لا تزال Google Ads API تحتسب كل عملية ضمن الحد الأقصى للعمليات اليومية، باتّباع تعليمات احتساب عمليات واجهة برمجة التطبيقات.
يتيح لك BatchJobService أيضًا استخدام معرّفات مؤقتة في طلباتك لكي تتمكّن من إرسال عمليات تابعة في مهمة واحدة.
العمليات
تتيح BatchJobService جميع العمليات المدرَجة في MutateOperation التي تتيح الخدمة الأساسية لها الفشل الجزئي، بالإضافة إلى AssetGroupOperation وAssetGroupListingGroupFilterOperation، والتي يتم استثناؤها وتنفيذها بشكل صريح (إلى جانب العمليات المترابطة ذات الصلة) في دفعات فرعية ذرية.
بما أنّ Google Ads API تنفّذ العمليات العادية في مهمة تم تفعيل ميزة الفشل الجزئي فيها (باستثناء الدفعات الفرعية غير القابلة للتجزئة)، في حال إلغاء مهمة أو فشل عمليات فردية، لا يتم التراجع عن العمليات التي نجحت.
يجب أن تكون العمليات التالية في MutateOperation
ذرية ولا تتيح الفشل الجزئي، لذا فهي غير
متاحة ضمن وظائف الدفعات. تؤدي إضافة أي من هذه العمليات إلى مهمة مجمّعة إلى ظهور الخطأ MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE (أو InternalError.INTERNAL_ERROR لـ BookCampaignsOperation وQuoteCampaignsOperation). بدلاً من ذلك، نفِّذها باستخدام GoogleAdsService.Mutate مع ضبط partial_failure على false (وضبط validate_only على true لـ QuoteCampaignsOperation).
العمليات غير المتوافقة في BatchJobService
BookCampaignsOperation(متوفّر فيMutateOperation)CampaignConversionGoalOperationConversionGoalCampaignConfigOperationCustomConversionGoalOperationCustomerConversionGoalOperationCustomerOperationQuoteCampaignsOperation(متوفّرة فيMutateOperation، وتتطلّب ضبطvalidate_onlyعلىtrue)