Nhà máy

factories cung cấp giao diện cấp cao để tạo các thao tác và tài nguyên với thư viện ứng dụng.

Các phương thức nhà máy được tạo tự động cho tất cả tài nguyên, enum, thao tác và loại dịch vụ do API Google Ads cung cấp.

Hoạt động tính toán

Thư viện này cung cấp client.operation.create_resource.<resource_type>, client.operation.update_resource.<resource_type>client.operation.remove_resource.<resource_type> các phương thức thuận tiện để dễ dàng tạo thao tác làm việc với API Google Ads.

Dưới đây là ví dụ về cách tạo tài nguyên:

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

Lưu ý rằng đối tượng được tạo ra cho khối cb là một thực thể mới của CampaignBudget mà sau đó bạn có thể thay đổi và tạo thao tác thích hợp cho Trả về CampaignBudgetService.

Tương tự, chúng tôi cung cấp các phương thức thuận tiện để cập nhật:

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

Các lệnh gọi này trả về một thao tác cập nhật được định dạng đúng, với một giá trị được điền sẵn mặt nạ trường để cập nhật tài nguyên trong API Google Ads.

Dưới đây là ví dụ về cách xoá tài nguyên bằng đường dẫn tài nguyên:

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

Nếu muốn tự mình thực hiện thao tác, bạn có thể tải một thao tác thô rồi điền các trường theo cách thủ công.

operation = client.operation.campaign

Tài nguyên

Thư viện cung cấp client.resource.<resource_type> là một cách thuận tiện để khởi tạo đối tượng tài nguyên:

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

Một thực thể mới của loại tài nguyên được yêu cầu được tạo ra cho khối được truyền cho trường cài đặt.

Dịch vụ

Thư viện cung cấp client.service.<service_name> là một cách thuận tiện để lấy đối tượng dịch vụ:

campaign_service = client.service.campaign

Enum

Bạn nên sử dụng cú pháp biểu tượng để thiết lập tĩnh các trường enum (ví dụ: campaign.status = :PAUSED). Tuy nhiên, nếu bạn muốn liệt kê tất cả giá trị hợp lệ cho một enum, chúng tôi cũng cung cấp các phương thức để:

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

Thiết lập rõ ràng các phiên bản API Google Ads

Bạn cũng có thể đặt rõ ràng một phiên bản:

client.resource.v17.[entity]
client.operation.v17.[operation]
client.service.v17.[service]
client.enum.v17.[enum]