factories
, müşteri kitaplığıyla işlem ve kaynak oluşturmak için üst düzey bir arayüz sağlar.
Fabrika yöntemleri, Google Ads API tarafından sağlanan tüm kaynaklar, enum'lar, işlemler ve hizmet türleri için otomatik olarak oluşturulur.
İşlemler
Kitaplık, Google Ads API ile çalışacak işlemleri kolayca oluşturmak için client.operation.create_resource.<resource_type>
, client.operation.update_resource.<resource_type>
ve
client.operation.remove_resource.<resource_type>
kolaylık yöntemleri sağlar.
Kaynak oluşturma örneğini aşağıda bulabilirsiniz:
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
bloğuna döndürülen nesnenin, daha sonra değiştirebileceğiniz yeni bir CampaignBudget
örneği olduğunu ve CampaignBudgetService
için uygun oluşturma işleminin döndürüldüğünü unutmayın.
Benzer şekilde, güncelleme yapmak için kolaylık sağlayan yöntemler sunuyoruz:
# 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])
Bu çağrılar, Google Ads API'deki kaynağı güncellemek için önceden doldurulmuş bir alan maskesi içeren iyi biçimlendirilmiş bir güncelleme işlemi döndürür.
Aşağıda, kaynak yolu kullanılarak bir kaynağın kaldırılmasına ilişkin bir örnek verilmiştir:
remove_operation = client.operation.remove_resource.campaign(campaign_resource_name)
campaign_service.mutate_campaigns(customer_id, [remove_operation])
İşlemle kendiniz çalışmak istiyorsanız ham bir işlem alıp alanları manuel olarak doldurabilirsiniz.
operation = client.operation.campaign
Kaynaklar
Kitaplık, kaynak nesnelerini başlatmanın kolay bir yolu olarak client.resource.<resource_type>
sağlar:
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
Alanları ayarlamak için istenen kaynak türünün yeni bir örneği, iletilen bloğa döndürülür.
Hizmetler
Kitaplık, hizmet nesnelerini almak için uygun bir yöntem olarak client.service.<service_name>
sağlar:
campaign_service = client.service.campaign
Sıralamalar
enum alanları statik olarak ayarlamak için simge söz dizimini kullanmanızı öneririz (ör. campaign.status = :PAUSED
). Ancak bir enum için tüm geçerli değerleri listelemek istiyorsanız bunun için de yöntemler sunuyoruz:
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 sürümlerini açıkça ayarlama
Ayrıca bir sürümü açıkça da ayarlayabilirsiniz:
client.resource.v19.[entity]
client.operation.v19.[operation]
client.service.v19.[service]
client.enum.v19.[enum]