Date post: | 21-Jan-2015 |
Category: |
Technology |
Upload: | marcwan |
View: | 188 times |
Download: | 0 times |
AdWords API Workshops – All rights reserved
AdWords API Workshops – All rights reserved
AdWords ScriptsAutomatice AdWords usando JavaScript
Santiago Souza, Google.Anash P. Oommen, Google.
AdWords API Workshops – All rights reserved
● Introducción
● Tu primer Script + demo
● Obteniendo Ayuda
● Preguntas
● Recursos
Agenda
AdWords API Workshops – All rights reserved
Introducción
AdWords API Workshops – All rights reserved
● Acceso programático a información de su cuenta de
AdWords
● Escribe tu código en JavaScript
● IDE de programación en tu cuenta de AdWords
Introducción
AdWords API Workshops – All rights reserved
● Herramientas rápidas modificaciones one-time
● Reportes muy personalizados
● Alertas sobre su cuenta
● Integración de Feed externos
Principales Casos de Usos
AdWords API Workshops – All rights reserved
● Familiaridad Entry-level con JavaScript
● Una cuenta de AdWords account para escribir tus
scripts!
Requerimientos
AdWords API Workshops – All rights reserved
● Puede acceder entidades importantes de AdWords:○ Campañas, Grupos de Anuncios, Palabras Claves,
Anuncios, Extensiones, reportes…● Entidades de la API
○ Ad Params● Entidades no soportadas por la AdWords API
○ Labels● No beta restriction
Capacidades
AdWords API Workshops – All rights reserved
● IDE con autocomplete y syntax highlighting
● Ejecución en preview mode para pruebas○ Preview mode no refleja los cambios en la cuenta○ Realizará las demás tareas como enviar mails, actualizar
spreadsheets, etc.● Utiliza OAuth 2.0 para autenticación
○ Hasta 250 scripts por cuenta de usuario
Capacidades (continuación)
AdWords API Workshops – All rights reserved
● Los Scripts pueden ser automatizados○ Pueden ser programados para ejecutarse solos
periódicamente○ Hasta una frecuencia mínima cada 1 hora
● Puede conectarse con fuentes de datos externas○ Conectarse a URLs externas○ Interactuar con Google Drive y Spreadsheets○ Enviar emails
Capacidades (continuación)
AdWords API Workshops – All rights reserved
● APIs e Interfaz Simplificadas● Requiere menos cantidad de código que con AdWords API● Por ejemplo: feed services simplificados
Capacidades (continuación)
AdWords API Workshops – All rights reserved
Demo
AdWords API Workshops – All rights reserved
Creando su primer script
AdWords API Workshops – All rights reserved
Creando su primer script (continuado)
AW SCRIPT
AdWords API Workshops – All rights reserved
function main() {
// Get all campaigns.
var campaignIterator = AdWordsApp.campaigns().get();
// iterate the list and print names to logger window.
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
Logger.log(campaign.getName());
}
}
1er script - obtener todas las campañas
AW SCRIPT
AdWords API Workshops – All rights reserved
function main() {
// Retrieve campaign by name using AWQL.
var demoCampaign = AdWordsApp.campaigns().
withCondition("Name='Demo campaign'").get().next();
// Retrieve child adgroup using AWQL.
var demoAdGroup = demoCampaign.adGroups().
withCondition("Name='Demo adgroup'").get().next();
// Modify the adgroup properties.
demoAdGroup.setKeywordMaxCpc(1.2);
}
Obteniendo y actualizando Entidades
AW SCRIPT
AdWords API Workshops – All rights reserved
function main() {
// Run an account performance report
var report = AdWordsApp.report("SELECT Clicks, Impressions, " +
"Cost, AverageCpc, Date FROM ACCOUNT_PERFORMANCE_REPORT " +
"DURING LAST_WEEK");
// Retrieve the spreadsheet to export values to.
var SPREADSHEET_URL = "xxx";
var spreadsheet = SpreadsheetApp.openByUrl(SPREADSHEET_URL);
var sheet = spreadsheet.getSheetByName(
"Account performance report");
}
Reportes
AW SCRIPT
AdWords API Workshops – All rights reserved
// Export the report to spreadsheet
report.exportToSheet(sheet);
// Send out an email with the spreadsheet link
MailApp.sendEmail("[email protected]",
"Account performance report is ready!",
"Access it at " + SPREADSHEET_URL);
}
Reportes - continuado
AdWords API Workshops – All rights reserved
Obteniendo Ayuda
AdWords API Workshops – All rights reserved
● Documentación Oficial○ https://developers.google.com/adwords/scripts/
● Snippets de Código○ Accessible desde la IDE en su cuenta○ También disponible en la documentación en el sitio
Documentación y snippets de código
AdWords API Workshops – All rights reserved
● Preguntas en el foro○ https://groups.google.com/forum/#!forum/adwords-scripts○ Preguntas generales, snippets de código, soluciones
completas, pedidos de nuevas funcionalidades, etc○ Comunidad de desarrolladores y el equipo de Scripts de
Google!
Haga sus preguntas en nuestro foro!
AdWords API Workshops – All rights reserved
● Soluciones completas listas para usar!○ https://developers.google.com/adwords/scripts/docs/solutions/○ Listas para usar!○ Se pueden personalizar!○ Multiples categorias - reportes personalizados, herramientas
de biddings, etc
● Scripts de terceros y la comunidad de desarrolladores:○ http://www.freeadwordsscripts.com/
Soluciones Completas!
AdWords API Workshops – All rights reserved
Preguntas?
AdWords API Workshops – All rights reserved
Recursos
Documentación: http://goo.gl/77ACPForo: http://goo.gl/QsxCz5
AdWords API Workshops – All rights reserved
AW SCRIPT
AdWords API Workshops – All rights reserved
var sitelink = AdWordsApp.extensions()
.newSitelinkBuilder()
.withLinkText("Hello world")
.withLinkUrl("http://www.example.com")
.create();
AdWordsApp.campaigns()
.withIds(['178532656'])
.get().next()
.addSitelink(sitelink);
Appendix 1 - Crear sitelinks
AW SCRIPT
AdWords API Workshops – All rights reserved
//interator on keywords
var kwIter = AdWordsApp.keywords().get(); //this is long, select campaign first
while (kwIter.hasNext()) {
//iterator on parameter of the current keyword
var adParamIter = kwIter.next().adParams().get();
while (adParamIter.hasNext()) {
var adParam = adParamIter.next();
Logger.log("campaign="+ adParam.getAdGroup().getCampaign().getName()+
" AdGroup="+ adParam.getAdGroup().getName()+
" KW=" + adParam.getKeyword().getText() +
" idx=" + adParam.getIndex() +
" value=" + adParam.getInsertionText());
}
}
Appendix 2 - Leer AdParams