توفّر Google Ads API طرقًا متعددة لتغيير الموارد حسب حالة الاستخدام:
- تعديلات خدمة الموارد: لكل مورد قابل للتعديل خدمة مخصّصة تنفّذ العمليات لنوع المورد المحدّد هذا. على سبيل المثال، يستخدم المورد
Campaignنقطة النهايةCampaignService.MutateCampaignsلإنشاء الحملات أو تعديلها أو إزالتها. - عمليات التعديل المجمّعة: تدمج نقطة النهاية
GoogleAdsService.Mutateسلسلة من عمليات التعديل على مستوى أنواع موارد متعدّدة (وعمليات الإجراءات المتوافقة، مثل حملات الحجز أو عروض الأسعار التقديرية) في طلب متزامن واحد. - مهام الدفعات غير المتزامنة: بالنسبة إلى
التغييرات الواسعة النطاق أو أعباء العمل التي تستغرق وقتًا طويلاً،
تنفّذ
BatchJobServiceالعمليات بشكل غير متزامن بدون المخاطرة بانتهاء مهلة الطلبات المتزامنة. على عكسGoogleAdsService.Mutate، يتم تنفيذBatchJobServiceدائمًا ضمن دلالات الفشل الجزئي ولا يتيح وضعvalidate_onlyأو عمليات الإجراءات (book_campaigns_operation،quote_campaigns_operation). وبما أنّ الفشل الجزئي يكون نشطًا دائمًا، يرفضBatchJobServiceعمليات الموارد التي لا تتيح خدماتها الأساسية الفشل الجزئي (مثلCustomerOperation،CampaignConversionGoalOperation،ConversionGoalCampaignConfigOperation،CustomConversionGoalOperation، وCustomerConversionGoalOperation) معMutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE.
مزايا التغييرات المجمّعة
يوفّر استخدام GoogleAdsService.Mutate المزايا التالية
(راجِع أفضل ممارسات Mutate للحصول على إرشادات
التنفيذ):
- الإجراءات المجمّعة في خدمات الموارد المختلفة: في حين أنّ طلبات خدمة الموارد الفردية تقبل فقط العمليات لنوع مورد واحد، يتيح لك
GoogleAdsService.Mutateتغيير أنواع موارد متعددة في طلب واحد. - أسماء الموارد المؤقتة: يمكنك تعيين معرّفات أعداد صحيحة سالبة (مثل
customers/CUSTOMER_ID/campaigns/-1) للكيانات الرئيسية التي تم إنشاؤها حديثًا والإشارة إلى تلك المعرّفات المؤقتة في العمليات الفرعية ضمن الطلب نفسه.
باستخدام هذه الإمكانات، يمكنك استخدام GoogleAdsService.Mutate لإنشاء تسلسل هرمي كامل للحملة بشكل ذري بحيث تنجح جميع العمليات أو تفشل معًا، أو ضبط partial_failure على true لتنفيذ العمليات الصالحة بشكل مستقل.