Fabrikalar

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]