factories
offre 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 client.operation.create_resource.<resource_type>
,
client.operation.update_resource.<resource_type>
e
client.operation.remove_resource.<resource_type>
pratici metodi per creare facilmente operazioni da utilizzare con l'API Google Ads.
Ecco un esempio per la 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 ceduto al blocco cb
è una nuova istanza di
CampaignBudget
che puoi modificare, nonché l'operazione di creazione appropriata per
Viene restituito CampaignBudgetService
.
Analogamente, forniamo metodi pratici 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 formulata correttamente, con un maschera di campo per aggiornare la risorsa nell'API Google Ads.
Ecco un esempio di rimozione di una risorsa utilizzando un percorso:
remove_operation = client.operation.remove_resource.campaign(campaign_resource_name)
campaign_service.mutate_campaigns(customer_id, [remove_operation])
Se preferisci lavorare autonomamente, puoi ottenere un'operazione non elaborata e compilare manualmente i campi.
operation = client.operation.campaign
Risorse
La libreria mette a disposizione client.resource.<resource_type>
come modo pratico per
inizializza gli oggetti delle risorse:
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
Viene assegnata una nuova istanza del tipo di risorsa richiesto al blocco passato per dell'impostazione dei campi.
Servizi
La libreria mette a disposizione client.service.<service_name>
come modo pratico per
Recupera oggetti di servizio:
campaign_service = client.service.campaign
Enum
Ti consigliamo di utilizzare la sintassi dei simboli per l'impostazione statica dei campi di enumerazione
(ad es. campaign.status = :PAUSED
). Tuttavia, se vuoi enumerare tutte le
valori validi per un'enumerazione, forniamo anche 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.v17.[entity]
client.operation.v17.[operation]
client.service.v17.[service]
client.enum.v17.[enum]