همانطور که در راهنمای ساختار API بحث شد، هر منبع سطح بالا در Google Ads API یک سرویس مربوط به نوع منبع دارد که پشتیبانی می کند:
- اصلاح نمونه های منبع
- بازیابی یک نمونه واحد از منبع برای بازرسی
این راهنما از CampaignService
برای نشان دادن اصلاح و بازرسی اشیاء Campaign
استفاده می کند، اما مفاهیم مشابه برای سایر سرویس های نوع منبع خاص اعمال می شود.
تغییر اشیاء
هر سرویس خاص نوع منبع دارای یک متد جهش است که درخواست جهش را می پذیرد. این درخواست عبارت است از:
-
customerId
- مجموعه ای از عملیات
- یک تنظیم نوع محتوای پاسخ که تعیین می کند آیا منبع تغییرپذیر یا فقط نام منبع باید جهش پست را برگرداند.
به عنوان مثال، روش MutateCampaigns
در CampaignService
یک MutateCampaignsRequest
را می پذیرد که شامل موارد زیر است:
-
customerId
- مجموعه ای از اشیاء
CampaignOperation
- فیلد
response_content_type
نشان دهنده نوع پاسخ ترجیحی است.
عملیات
یک شی عملیاتی مانند CampaignOperation
به شما امکان می دهد با تنظیم فیلد operation
آن، اقدامی را که می خواهید روی یک منبع انجام دهید مشخص کنید. این فیلد یکی از فیلدهای متشکل از ویژگی های زیر است که نوع آن نوع منبع است:
-
create
- یک نمونه جدید از منبع ایجاد می کند.
-
update
- منبع را برای مطابقت با ویژگی های منبع
update
به روز می کند. وقتی این فیلد تنظیم شد، بایدupdate_mask
عملیات را نیز تنظیم کنید، که به API Google Ads می گوید کدام ویژگی ها را در طول عملیات به روز رسانی تغییر دهد. هر کتابخانه سرویس گیرنده دارای یک روش کاربردی یا کمکی است کهupdate_mask
را برای شما ایجاد می کند، همانطور که در کتابخانه های مشتری ما نشان داده شده است. -
remove
- منبع را حذف می کند.
از آنجایی که فیلد operation
oneof
فیلدها است، نمی توانید از یک عملیات واحد برای اصلاح چندین شیء استفاده کنید. به عنوان مثال، اگر میخواهید یک کمپین ایجاد کنید و کمپین دیگری را حذف کنید، دو نمونه از CampaignOperation
را به درخواست خود اضافه کنید: یکی با مجموعه create
و دیگری با مجموعه remove
.
عملیات بچینگ
اگرچه یک عملیات تنها میتواند یک منبع را ایجاد، بهروزرسانی یا حذف کند، یک درخواست جهش میتواند شامل چندین عملیات باشد. شما باید به جای ارسال چندین درخواست جهش که هر کدام شامل یک عملیات واحد هستند، عملیات خود را در یک درخواست جهش واحد ترکیب کنید.
برای مثال، اگر میخواهید ده کمپین ایجاد کنید، باید یک MutateCampaignsRequest
ارسال کنید که دارای ده شیء CampaignOperation
باشد.
پاسخ ها را تغییر دهید
آنچه در پاسخ بازگردانده می شود بستگی به آنچه در response_content_type
درخواست جهش ارسال شده است. برای مثال، اگر MUTABLE_RESOURCE
مشخص شده بود، پاسخ فقط شامل فیلدهای قابل تغییر در کمپین خواهد بود. سپس میتوانید جهشهای بعدی را در آن شی منبع بدون نیاز به بازسازی آن ایجاد کنید.
جهش خطاها
عملیات در یک درخواست جهش داده شده تنها در صورتی برای حساب Google Ads شما اعمال می شود که هر عملیات در درخواست موفقیت آمیز باشد. راهنمای خطاهای رایج را برای لیستی از خطاهای رایج و نحوه رسیدگی به آنها بررسی کنید.