factories
یک رابط سطح بالا برای ایجاد عملیات و منابع با کتابخانه مشتری فراهم می کند.
روشهای Factories بهطور خودکار برای همه منابع، فهرستها، عملیاتها و انواع خدمات ارائهشده توسط Google Ads API ایجاد میشوند.
عملیات
این کتابخانه برای ایجاد آسان عملیات برای کار با Google Ads API، روشهای راحت client.operation.create_resource.<resource_type>
، client.operation.update_resource.<resource_type>
و client.operation.remove_resource.<resource_type>
را فراهم میکند.
در اینجا یک مثال برای ایجاد یک منبع آورده شده است:
campaign_budget_operation = client.operation.create_resource.campaign_budget do |cb|
cb.name = "Interplanetary Budget #{(Time.new.to_f * 1000).to_i}"
cb.delivery_method = :STANDARD
cb.amount_micros = 500000
end
return_budget = client.service.campaign_budget.mutate_campaign_budgets(
customer_id,
[campaign_budget_operation]
)
توجه داشته باشید که شی ای که به بلوک cb
داده می شود نمونه جدیدی از CampaignBudget
است که می توانید آن را تغییر دهید و عملیات ایجاد مناسب برای CampaignBudgetService
برگردانده می شود.
به طور مشابه، ما روشهای راحت را برای بهروزرسانی ارائه میکنیم:
# if you only have a resource name
update_operation = client.operation.update_resource.campaign(campaign_resource_name) do |camp|
camp.status = :PAUSED
end
campaign_service.mutate_campaigns(customer_id, [update_operation])
# if you have a full resource proto
update_operation = client.operation.update_resource.campaign(campaign) do
campaign.name = "A different interplanetary Cruise #{(Time.new.to_f * 1000).to_i}"
end
campaign_service.mutate_campaigns(customer_id, [update_operation])
این تماسها یک عملیات بهروزرسانی خوب را با یک ماسک فیلد از پیش پرشده برای بهروزرسانی منبع در Google Ads API بازمیگردانند.
در اینجا مثالی از حذف یک منبع با استفاده از مسیر منبع آورده شده است:
remove_operation = client.operation.remove_resource.campaign(campaign_resource_name)
campaign_service.mutate_campaigns(customer_id, [remove_operation])
اگر ترجیح میدهید خودتان با عملیات کار کنید، میتوانید عملیات خام را دریافت کنید و سپس فیلدها را به صورت دستی پر کنید.
operation = client.operation.campaign
منابع
این کتابخانه client.resource.<resource_type>
را به عنوان یک راه مناسب برای مقداردهی اولیه اشیاء منبع ارائه می کند:
campaign.network_settings = client.resource.network_settings do |ns|
ns.target_google_search = true
ns.target_search_network = true
ns.target_content_network = false
ns.target_partner_search_network = false
end
یک نمونه جدید از نوع منبع درخواستی به بلوک ارسال شده برای تنظیم فیلدها داده می شود.
خدمات
کتابخانه client.service.<service_name>
به عنوان یک راه راحت برای دریافت اشیاء سرویس ارائه می دهد:
campaign_service = client.service.campaign
Enums
توصیه می کنیم از نحو نماد برای تنظیم ایستا فیلدهای enum استفاده کنید (به عنوان مثال، campaign.status = :PAUSED
). با این حال، اگر میخواهید تمام مقادیر معتبر یک enum را برشمارید، روشهایی را نیز برای آن ارائه میکنیم:
client.enum.ad_type.each { |x| p x }
:SHOPPING_PRODUCT_AD
:GMAIL_AD
:UNKNOWN
:UNSPECIFIED
:CALL_ONLY_AD
:VIDEO_AD
:IMAGE_AD
:EXPANDED_DYNAMIC_SEARCH_AD
:RESPONSIVE_DISPLAY_AD
:TEXT_AD
:LEGACY_RESPONSIVE_DISPLAY_AD
:LEGACY_APP_INSTALL_AD
:APP_AD
:SHOPPING_SMART_AD
:EXPANDED_TEXT_AD
:HOTEL_AD
:RESPONSIVE_SEARCH_AD
تنظیم صریح نسخههای Google Ads API
همچنین می توانید به صراحت یک نسخه را تنظیم کنید:
client.resource.v17.[entity]
client.operation.v17.[operation]
client.service.v17.[service]
client.enum.v17.[enum]