फ़ैक्ट्री

factories, कार्रवाइयां और संसाधन बनाने के लिए हाई-लेवल इंटरफ़ेस उपलब्ध कराता है पर जाकर, संपर्क करने की सुविधा का इस्तेमाल करें.

सभी संसाधनों, ईनम, और अन्य सभी संसाधनों के लिए, फ़ैक्ट्री वाले तरीके अपने-आप जनरेट होते हैं. और Google Ads API से मिलने वाली सेवाओं के टाइप होते हैं.

ऑपरेशंस

लाइब्रेरी में client.operation.create_resource.<resource_type>, client.operation.update_resource.<resource_type>, और client.operation.remove_resource.<resource_type> कोई भी कार्रवाई आसानी से करने के लिए, Google Ads API के साथ काम करने के तरीके उपलब्ध हैं.

यहां संसाधन बनाने का एक उदाहरण दिया गया है:

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])

ये कॉल, पहले से भरी हुई जानकारी के साथ, सही तरीके से अपडेट किए जाने का काम करते हैं फ़ील्ड मास्क का इस्तेमाल करें.

यहां संसाधन पाथ का इस्तेमाल करके, संसाधन को हटाने का एक उदाहरण दिया गया है:

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

हमारा सुझाव है कि एनम फ़ील्ड को स्टैटिक रूप से सेट करने के लिए, सिंबल सिंटैक्स का इस्तेमाल करें (उदाहरण के लिए, campaign.status = :PAUSED). हालांकि, अगर आप इन सभी फ़ंक्शन की मान्य वैल्यू सेट करते हैं, तो हम उसके लिए भी तरीके उपलब्ध कराते हैं:

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]