factories
fornisce un'interfaccia di alto livello per la creazione di operazioni e risorse con la libreria client.
I metodi di Factory vengono generati automaticamente per tutte le risorse, gli enum, le operazioni e i tipi di servizio forniti dall'API Google Ads.
Operazioni
La libreria fornisce metodi di utilità client.operation.create_resource.<resource_type>
,
client.operation.update_resource.<resource_type>
e
client.operation.remove_resource.<resource_type>
per creare facilmente operazioni da utilizzare con l'API Google Ads.
Ecco un esempio di creazione di una risorsa:
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]
)
Tieni presente che l'oggetto restituito al blocco cb
è una nuova istanza di
CampaignBudget
che puoi poi modificare e viene restituita l'operazione di creazione appropriata per
CampaignBudgetService
.
Analogamente, forniamo metodi di praticità per l'aggiornamento:
# 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])
Queste chiamate restituiscono un'operazione di aggiornamento ben formattata, con una maschera di campo precompilata per aggiornare la risorsa nell'API Google Ads.
Ecco un esempio di rimozione di una risorsa utilizzando un percorso della risorsa:
remove_operation = client.operation.remove_resource.campaign(campaign_resource_name)
campaign_service.mutate_campaigns(customer_id, [remove_operation])
Se preferisci lavorare direttamente con l'operazione, puoi ottenere un'operazione non elaborata e poi compilare manualmente i campi.
operation = client.operation.campaign
Risorse
La libreria fornisce client.resource.<resource_type>
come modo pratico per inizializzare gli oggetti della risorsa:
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
Al blocco passato viene restituita una nuova istanza del tipo di risorsa richiesta per impostare i campi.
Servizi
La libreria fornisce client.service.<service_name>
come modo pratico per recuperare gli oggetti di servizio:
campaign_service = client.service.campaign
Enum
Ti consigliamo di utilizzare la sintassi dei simboli per impostare in modo statico i campi enum
(ad es. campaign.status = :PAUSED
). Tuttavia, se vuoi enumerare tutti i valori validi per un enum, forniamo anche i metodi per farlo:
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
Impostazione esplicita delle versioni dell'API Google Ads
Puoi anche impostare esplicitamente una versione:
client.resource.v19.[entity]
client.operation.v19.[operation]
client.service.v19.[service]
client.enum.v19.[enum]