Fabrikalar

factories, istemci kitaplığıyla işlemler ve kaynaklar oluşturmak için üst düzey bir arayüz sağlar.

Google Ads API tarafından sağlanan tüm kaynaklar, numaralandırmalar, işlemler ve hizmet türleri için fabrika yöntemleri otomatik olarak oluşturulur.

İşlemler

Kitaplık, Google Ads API ile çalışmak için işlemleri kolayca oluşturmanıza olanak tanıyan client.operation.create_resource.<resource_type>, client.operation.update_resource.<resource_type> ve client.operation.remove_resource.<resource_type> kolaylık yöntemleri sunar.

Kaynak oluşturmayla ilgili bir örneği 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 verilen nesnenin, daha sonra değiştirebileceğiniz CampaignBudget öğesinin yeni bir örneği olduğunu ve CampaignBudgetService için uygun oluşturma işleminin döndürüldüğünü unutmayın.

Benzer şekilde, güncelleme 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ş alan maskesiyle birlikte iyi biçimlendirilmiş bir güncelleme işlemi döndürür.

Kaynak yolu kullanarak kaynak kaldırma örneğini aşağıda bulabilirsiniz:

remove_operation = client.operation.remove_resource.campaign(campaign_resource_name)
campaign_service.mutate_campaigns(customer_id, [remove_operation])

İşlemi kendiniz yapmak isterseniz ham bir işlem alıp alanları manuel olarak doldurabilirsiniz.

operation = client.operation.campaign

Kaynaklar

Kitaplık, kaynak nesnelerini başlatmak için uygun bir yöntem olarak client.resource.<resource_type> işlevini 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

İstenen kaynak türünün yeni bir örneği, alanları ayarlamak için iletilen bloğa verilir.

Hizmetler

Kitaplık, hizmet nesnelerini almanın kolay bir yolu olarak client.service.<service_name> sağlar:

campaign_service = client.service.campaign

Sıralamalar

Numara alanlarını statik olarak ayarlamak için sembol söz dizimini kullanmanızı öneririz (ör. campaign.status = :PAUSED). Bununla birlikte, bir enum için geçerli tüm 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.v20.[entity]
client.operation.v20.[operation]
client.service.v20.[service]
client.enum.v20.[enum]