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 bằng 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 các phương thức tiện lợi client.operation.create_resource.<resource_type>, client.operation.update_resource.<resource_type>client.operation.remove_resource.<resource_type> để dễ dàng tạo các thao tác hoạt động 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]
)

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

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 hợp lệ, với một mặt nạ trường được điền sẵn để cập nhật tài nguyên trong API Google Ads.

Dưới đây là ví dụ về cách xoá một 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ự xử lý toán tử, bạn có thể lấy một toán tử 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> như một cách thuận tiện để khởi chạy các đố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 sẽ được trả về cho khối đã truyền để đặt các trường.

Dịch vụ

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

campaign_service = client.service.campaign

Enum

Bạn nên sử dụng cú pháp ký hiệu để đặt các trường enum một cách tĩnh (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 cho việ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.v19.[entity]
client.operation.v19.[operation]
client.service.v19.[service]
client.enum.v19.[enum]