توفّر Google Ads API طرقًا متعددة لتعديل الموارد حسب حالة الاستخدام:
- تعديل خدمة الموارد: يتضمّن كل مورد قابل للتعديل خدمة مخصّصة تنفّذ العمليات الخاصة بنوع المورد المحدّد. على سبيل المثال، يستخدم المورد
Campaignنقطة النهايةCampaignService.MutateCampaignsلإنشاء الحملات أو تعديلها أو إزالتها. - عمليات التعديل المجمّعة: يغلّف نقطة النهاية
GoogleAdsService.Mutateسلسلة من عمليات التعديل على مستوى أنواع موارد متعددة (وفي الإصدار 23 والإصدارات الأحدث، عمليات الإجراءات المتوافقة، مثل حملات الحجز أو الاقتباس) في طلب متزامن واحد. - مهام الدفعات غير المتزامنة: بالنسبة إلى عمليات التغيير على نطاق واسع أو أحمال العمل التي تستغرق وقتًا طويلاً، تنفّذ
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 المزايا التالية
(راجِع أفضل الممارسات في التعديل للحصول على إرشادات حول التنفيذ):
- الإجراءات المجمّعة على مستوى خدمات الموارد المختلفة: في حين أنّ طلبات خدمات الموارد الفردية تقبل العمليات لنوع واحد فقط من الموارد، تتيح لك
GoogleAdsService.Mutateتعديل أنواع متعددة من الموارد في طلب واحد. - أسماء الموارد المؤقتة: يمكنك تعيين أرقام تعريف سالبة (مثل
customers/CUSTOMER_ID/campaigns/-1) إلى عناصر رئيسية تم إنشاؤها حديثًا والإشارة إلى أرقام التعريف المؤقتة هذه في عمليات فرعية ضمن الطلب نفسه.
باستخدام هذه الإمكانات، يمكنك استخدام GoogleAdsService.Mutate لإنشاء تسلسل هرمي كامل للحملة بشكل ذري، بحيث تنجح جميع العمليات أو تفشل معًا، أو ضبط partial_failure على true لتنفيذ العمليات الصالحة بشكل مستقل.