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