يتم تعديل معظم الموارد (إنشاؤها أو تعديلها أو إزالتها) باستخدام Mutate
.
. يتم استدعاء الإجراء Mutate
باعتباره HTTP POST
إلى مصدر خاص
عنوان URL الذي يطابق نمط اسم المورد، بدون رقم تعريف المورد اللاحق.
بدلاً من ذلك، يتم إرسال أرقام تعريف الموارد المطلوب تغييرها في طلب JSON.
جسم. يتيح لك هذا إرسال طلب بيانات واحد من واجهة برمجة التطبيقات يحتوي على عمليات متعددة على
موارد مختلفة.
على سبيل المثال، يستخدم اسم مورد الحملة التنسيق التالي:
customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID
لاستخراج عنوان URL المستخدم في الحملات المتغيرة، احذف معرّف المورد اللاحق
إلحاق :mutate
:
https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/campaigns:mutate
تحتوي رسالة Mutate
على كائن JSON من المستوى الأعلى يتضمّن مصفوفة operations
.
التي يمكن أن تحتوي على العديد من كائنات operation
. ويمكن أن تكون كل عملية بدورها واحدة
من: create
، أو update
، أو remove
. هذا هو التغيير الوحيد المحتمل
العمليات التجارية.
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ ... ] }
تتوافق معظم الخدمات مع آلاف العمليات من خلال طلب بيانات واحد من واجهة برمجة التطبيقات. يتيح لك نظام يوثّق دليل "الحدود" القيود المفروضة على أحجام الطلبات.
يتم تنفيذ العمليات داخل طلب واجهة برمجة تطبيقات واحد كمجموعة واحدة من الإجراءات من خلال
افتراضيًا، أي أنها تنجح معًا أو أن الدفعة بأكملها ستفشل إذا
فشل أي عملية فردية. تتيح بعض الخدمات
السمة partialFailure
لتغيير هذا السلوك. راجع تبديل الموارد
للحصول على معلومات أكثر تفصيلاً عن دلالات عملية التبديل.
إنشاء
إنشاء عمليات ينتج عنها كيانات جديدة ويجب أن تتضمن JSON كاملاً للمصدر الذي تنوي إنشاءه.
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "create": { "name": "An example campaign", "status": "PAUSED", "campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/CAMPAIGN_BUDGET_ID", "advertisingChannelType": "SEARCH", "networkSettings": { "targetGoogleSearch": true, "targetSearchNetwork": true, "targetContentNetwork": true, "targetPartnerSearchNetwork": false }, "target_spend": {} } } ] }
تعديل
تؤدي عمليات التحديث إلى إجراء تعديلات متفرقة على مورد حالي. تحتاج فقط إلى لتحديد الحقول التي تريد تعديلها.
لتحديد الحقول التي تريد تعديلها، اضبط السمة updateMask
على
قائمة بأسماء الحقول مفصولة بفواصل. يعد ذلك مفيدًا بشكل خاص إذا كنت
تمتلك بالفعل تمثيل JSON بصيغة كاملة لكائن (على سبيل المثال،
الذي يعرضه طلب بيانات سابق من واجهة برمجة التطبيقات)، ولكنها تريد تغيير حقول معينة فقط.
بدلاً من تنقيح كائن JSON، يمكنك فقط سرد أسماء الحقول المراد
التعديل في updateMask
وإرسال كائن JSON بالكامل.
يغيّر المثال التالي name
وstatus
لحملة حالية تحتوي على
قيمة resourceName
المحددة.
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "updateMask": "name,status", "update": { "resourceName": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID", "name": "My renamed campaign", "status": "PAUSED", } } ] }
إزالة
تؤدي إزالة العمليات إلى حذف عنصر بفعالية، وضبط حالته في "إعلانات Google" على
REMOVED
فقط resourceName
المطلوب إزالتها.
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "remove": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID" } ] }