SlideShare une entreprise Scribd logo
1  sur  45
Télécharger pour lire hors ligne
AdWords API Workshops – All rights reserved
Feed Services
Managing Feeds with the AdWords API

Adam Ohren, Google, Inc.

AdWords API Workshops – All rights reserved
Agenda
●
●
●
●
●
●

Feed Concepts
Creating New Feeds
Populating Ad Extensions
Reporting
Best Practices
Reuse of our Example Code

AdWords API Workshops – All rights reserved
Feed Concepts

AdWords API Workshops – All rights reserved
What is a Feed?
Feed

● Account-level table
● Collection of mutable rows
● Data provider for ad extensions
○ Sitelink extensions
○ Call extensions
○ App extensions

AdWords API Workshops – All rights reserved

Attr1

Attr2

Attr3

Item1

Val1

Val2

Val3

Item2

Val4

Val5

Val6
Feed Benefits
Feed

●
●
●
●

Dynamically update extensions
Modify extensions in-place
Retain reporting stats
FeedItem-level device preference

AdWords API Workshops – All rights reserved

Attr1

Attr2

Attr3

Item1

Val1

Val2

Val3

Item2

Val4

Val5

Val6
A Database Analogy
Table

Feed

Column

FeedAttribute

Row

FeedItem

Field

FeedItemAttributeValue

AdWords API Workshops – All rights reserved
A Database Analogy

AdWords API Workshops – All rights reserved

Ad Extension
All the Pieces
Data

AdWords API Workshops – All rights reserved

Extension Type

Ad Extensions
Feed Services API
●
●
●
●
●

FeedService
FeedItem Service
FeedMapping Service
CampaignFeed Service
AdGroupFeed Service

AdWords API Workshops – All rights reserved
Creating New Feeds

AdWords API Workshops – All rights reserved
Creating New Feeds
1. Create
2. Populate
3. Map

AdWords API Workshops – All rights reserved
Creating New Feeds
To do this...

…call this...

...with these!

Create

FeedService

Feed
FeedAttribute

Populate

FeedItemService

FeedItem
FeedItemAttribute

Map

FeedMappingService

FeedMapping

AdWords API Workshops – All rights reserved
Create
● Adds new named collection of data
● Defines columns names & types

AdWords API Workshops – All rights reserved
Create
1. Create Feed
a. Set name

2. Add FeedAttributes
a. Set names
b. Set types

3. Call FeedService.ADD

AdWords API Workshops – All rights reserved
Populate
● Inserts actual row items into the Feed
● Indicates per-item device preference
(optional)
● Configures per-item time period (optional)

AdWords API Workshops – All rights reserved
Populate
1. Create FeedItem
a. Set feedId

2. Add FeedItemAttributeValues
a. Set feedAttributeId
b. Set value

3. Call FeedItemService.ADD

AdWords API Workshops – All rights reserved
Map
● Declares which ad extensions can use
Feed
● Defines which Feed columns are used in
extension

AdWords API Workshops – All rights reserved
Map
1. Create FeedMapping
a. set feedId
b. set placeholderType

2. Add AttributeFieldMappings
a. set feedAttributeId
b. set fieldId

3. Call FeedMappingService.ADD

AdWords API Workshops – All rights reserved
Populating Ad Extensions

AdWords API Workshops – All rights reserved
Using Feed Data in Ad Extensions
Feed
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem

AdWords API Workshops – All rights reserved
Using Feed Data in Ad Extensions
Feed
FeedItem

matchingFunction

FeedItem

CampaignFeed

Campaign

AdGroupFeed

AdGroup

FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem

AdWords API Workshops – All rights reserved

matchingFunction
Associate with Campaigns & AdGroups
● Adds ad extensions to Campaigns or
AdGroups
● Defines how to pick FeedItems via a
matching function

AdWords API Workshops – All rights reserved
Associating to Campaigns & AdGroups
1. Create CampaignFeed
a. set feedId
b. set campaignId
c. set placeholderTypes

2. Add a matching Function
a. set operator
b. set operands

3. Call CampaignFeed.ADD
AdWords API Workshops – All rights reserved
Matching Functions
Feed
FeedItem
FeedItem
FeedItem

matchingFunction

CampaignFeed

Campaign

AdGroupFeed

AdGroup

FeedItemId IN (id1, id2, …)

FeedItem
FeedItem
FeedItem
FeedItem
FeedItem
FeedItem

AdWords API Workshops – All rights reserved

matchingFunction
FeedItemId IN (idA, idB, …)
Matching Functions
Feed

Campaign / AdGroup

FeedItemId IN (6435602, 6436202)
AdWords API Workshops – All rights reserved
Reporting

AdWords API Workshops – All rights reserved
Feed-based Reporting
Ad Extensions Performance Report
● DomainInfo
● Location
● LocationSync
● Sitelinks
● Mobile
● InAppLink

AdWords API Workshops – All rights reserved

Placeholder Feed Item Report
● Sitelinks
● Mobile
● InAppLink
Placeholder Feed Item Report
● FeedItem-level statistics
● PlaceholderType ⇔ Ad extension type
● Sitelink
● Call
● App

AdWords API Workshops – All rights reserved
Best Practices

AdWords API Workshops – All rights reserved
Using Built-in ADWORDS Feeds
● Each ad extension type has a default Feed pre-built
● Main sitelink feed
● Main phone number feed
● Main app feed

● Feed.origin = “ADWORDS”
● FeedAttributes (schema) are immutable

AdWords API Workshops – All rights reserved
Using User Defined Feeds
● Displayed in a dropdown alongside built-in Feeds
● Feed.origin = “USER”
● FeedAttributes (schema) are appendable

AdWords API Workshops – All rights reserved
Deleting Things
Feed Entries
● Delete FeedItem

AdWords API Workshops – All rights reserved

VS

Ad Extensions
● Remove Id from matching
function
Feed Trivia
● One CampaignFeed / AdGroupFeed per
PlaceholderType
● Don’t send existing FeedAttributes in Feed.SET
operations
● No validation on FeedItemIds in matchingFunctions
● Maximum of 20 Feeds per account
● Including built-in ADWORDS Feeds

● Can only delete Feeds & FeedItems via API (not UI)

AdWords API Workshops – All rights reserved
Reusing Our Example Code
How to change our code to your bidding

AdWords API Workshops – All rights reserved
Use The Code, Luke!
● Examples available for each Client Library
○ https://developers.google.com/adwords/api/docs/clientlibraries
● Don’t do the hard work yourself

● Start with the Sitelinks examples
● Convert that to Calls or other Extensions
AdWords API Workshops – All rights reserved
PLACEHOLDERs - what are they for?
What kind of Feed or Field you’re using is set by the
PLACEHOLDERs you assign, for example:
PLACEHOLDER_SITELINKS = 1;
PLACEHOLDER_CALL = 2;
...
PLACEHOLDER_FIELD_CALL_ONLY = 4;
See:
https://developers.google.com/adwords/api/docs/appendix/placeholders
AdWords API Workshops – All rights reserved
Fields
Add the required Fields for that Extension:
● Sitelink:

Text, URL (up to 6 pairs)

● Call or : Phone Number, Country Code, isCallTracking,
Mobile : isCallOnly, Conversion Duration Threshold
● App

: Store, Id, Link Text, URL

AdWords API Workshops – All rights reserved
Then just tidy up
● Rename stuff to make sense

The example code will have method and parameter
names that say SiteLink in them. Change these to
Call or App or whatever, to match what you’re doing.

AdWords API Workshops – All rights reserved
Then just tidy up
● Ensure you include all the Attributes you’re using:
FeedAttribute textAttribute = new FeedAttribute();
textAttribute.setType(FeedAttributeType.STRING);
textAttribute.setName("Link Text");

Becomes:
FeedAttribute numberAttribute = new FeedAttribute();
numberAttribute.setType(FeedAttributeType.STRING);
numberAttribute.setName("Phone Number");

:
AdWords API Workshops – All rights reserved
Then just tidy up
● Get the right FeedAttributeType:
FeedAttribute iCOAttribute = new FeedAttribute();
iCOAttribute.setType(FeedAttributeType.BOOLEAN);
iCOAttribute.setName("Is Call Only");

AdWords API Workshops – All rights reserved
Then just tidy up
● Get the right AttributeId in the right place:
Feed savedFeed = result.getValue()[0]; // a new FeedReturnValue
callData.callFeedId = savedFeed.getId(); // a data holder object
FeedAttribute[] savedAttributes = savedFeed.getAttributes();
callData.numberFeedAttributeId = savedAttributes[0].getId();
callData.ccFeedAttributeId = savedAttributes[1].getId();
callData.iCTFeedAttributeId = savedAttributes[2].getId();
...

// other Attribute lines

AdWords API Workshops – All rights reserved
Resources
Guide & Reference
https://developers.google.com/adwords/api/docs/guides/feed-services
https://developers.google.com/adwords/api/docs/appendix/placeholders
https://developers.google.com/adwords/api/docs/appendix/feed-errors
https://developers.google.com/adwords/api/docs/clientlibraries
AdWords API Workshops – All rights reserved
Questions?

AdWords API Workshops – All rights reserved
AdWords API Workshops – All rights reserved

Contenu connexe

En vedette

SMX East 2012 - Google Shopping/PLAs and Bing RAIS
SMX East 2012 - Google Shopping/PLAs and Bing RAISSMX East 2012 - Google Shopping/PLAs and Bing RAIS
SMX East 2012 - Google Shopping/PLAs and Bing RAISElizabeth Marsten
 
Getting started with Google Analytics and the AdWords API
Getting started with Google Analytics and the AdWords APIGetting started with Google Analytics and the AdWords API
Getting started with Google Analytics and the AdWords APImarcwan
 
AdWords Scripts (Spanish)
AdWords Scripts (Spanish)AdWords Scripts (Spanish)
AdWords Scripts (Spanish)marcwan
 
Bid Estimation with the AdWords API (v2)
Bid Estimation with the AdWords API (v2)Bid Estimation with the AdWords API (v2)
Bid Estimation with the AdWords API (v2)marcwan
 
Opportunity Analysis with Kratu (v2)
Opportunity Analysis with Kratu (v2)Opportunity Analysis with Kratu (v2)
Opportunity Analysis with Kratu (v2)marcwan
 
Reporting tips & tricks
Reporting tips & tricksReporting tips & tricks
Reporting tips & tricksmarcwan
 
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...ETH-Bibliothek
 
Jo sóc jo i les meves circumstàncies ... o no
Jo sóc jo i les meves circumstàncies ... o noJo sóc jo i les meves circumstàncies ... o no
Jo sóc jo i les meves circumstàncies ... o noMiquel Duran
 
Handouts march 21, 2014 - singapore - mi - trade launch
Handouts   march 21, 2014 - singapore - mi - trade launchHandouts   march 21, 2014 - singapore - mi - trade launch
Handouts march 21, 2014 - singapore - mi - trade launchThomas Armstrong
 
Para una sexualidad liberadora por Margarita bofarull (ponencia)
Para una sexualidad liberadora por Margarita bofarull (ponencia)Para una sexualidad liberadora por Margarita bofarull (ponencia)
Para una sexualidad liberadora por Margarita bofarull (ponencia)OFM
 
Presentacion future net español
Presentacion future net españolPresentacion future net español
Presentacion future net españolMarcia Charnevski
 
Zoom Comunicación Estratégica
Zoom Comunicación EstratégicaZoom Comunicación Estratégica
Zoom Comunicación Estratégicajennyramosm
 
Il percorso Enea per la mobilità sostenibile
Il percorso Enea per la mobilità sostenibileIl percorso Enea per la mobilità sostenibile
Il percorso Enea per la mobilità sostenibilecanaleenergia
 
Tech Coming To Direct Sales - Tearing Down the Wall by isocket
Tech Coming To Direct Sales - Tearing Down the Wall by isocketTech Coming To Direct Sales - Tearing Down the Wall by isocket
Tech Coming To Direct Sales - Tearing Down the Wall by isocketOximity
 
Lean Learning: Deliver Relevant Content When and Where It’s Needed
Lean Learning: Deliver Relevant Content When and Where It’s NeededLean Learning: Deliver Relevant Content When and Where It’s Needed
Lean Learning: Deliver Relevant Content When and Where It’s NeededHuman Capital Media
 
Synergistic Treatment Charts 2016
Synergistic Treatment Charts 2016Synergistic Treatment Charts 2016
Synergistic Treatment Charts 2016Ron W. Vanzetta
 
Tema 4 controladores de nivel ici-equipo plc
Tema 4 controladores de nivel  ici-equipo plcTema 4 controladores de nivel  ici-equipo plc
Tema 4 controladores de nivel ici-equipo plcPLC AREA DE GRADO
 
OAuth 2.0 refresher Talk
OAuth 2.0 refresher TalkOAuth 2.0 refresher Talk
OAuth 2.0 refresher Talkmarcwan
 

En vedette (20)

SMX East 2012 - Google Shopping/PLAs and Bing RAIS
SMX East 2012 - Google Shopping/PLAs and Bing RAISSMX East 2012 - Google Shopping/PLAs and Bing RAIS
SMX East 2012 - Google Shopping/PLAs and Bing RAIS
 
Getting started with Google Analytics and the AdWords API
Getting started with Google Analytics and the AdWords APIGetting started with Google Analytics and the AdWords API
Getting started with Google Analytics and the AdWords API
 
AdWords Scripts (Spanish)
AdWords Scripts (Spanish)AdWords Scripts (Spanish)
AdWords Scripts (Spanish)
 
Bid Estimation with the AdWords API (v2)
Bid Estimation with the AdWords API (v2)Bid Estimation with the AdWords API (v2)
Bid Estimation with the AdWords API (v2)
 
Opportunity Analysis with Kratu (v2)
Opportunity Analysis with Kratu (v2)Opportunity Analysis with Kratu (v2)
Opportunity Analysis with Kratu (v2)
 
Reporting tips & tricks
Reporting tips & tricksReporting tips & tricks
Reporting tips & tricks
 
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...
Der Untenstehende auf Zehenspitzen. Innovationsmanagement am Beispiel der ETH...
 
Jo sóc jo i les meves circumstàncies ... o no
Jo sóc jo i les meves circumstàncies ... o noJo sóc jo i les meves circumstàncies ... o no
Jo sóc jo i les meves circumstàncies ... o no
 
Handouts march 21, 2014 - singapore - mi - trade launch
Handouts   march 21, 2014 - singapore - mi - trade launchHandouts   march 21, 2014 - singapore - mi - trade launch
Handouts march 21, 2014 - singapore - mi - trade launch
 
Para una sexualidad liberadora por Margarita bofarull (ponencia)
Para una sexualidad liberadora por Margarita bofarull (ponencia)Para una sexualidad liberadora por Margarita bofarull (ponencia)
Para una sexualidad liberadora por Margarita bofarull (ponencia)
 
Maptek forge mar_14
Maptek forge mar_14Maptek forge mar_14
Maptek forge mar_14
 
Presentacion future net español
Presentacion future net españolPresentacion future net español
Presentacion future net español
 
Zoom Comunicación Estratégica
Zoom Comunicación EstratégicaZoom Comunicación Estratégica
Zoom Comunicación Estratégica
 
Il percorso Enea per la mobilità sostenibile
Il percorso Enea per la mobilità sostenibileIl percorso Enea per la mobilità sostenibile
Il percorso Enea per la mobilità sostenibile
 
Tech Coming To Direct Sales - Tearing Down the Wall by isocket
Tech Coming To Direct Sales - Tearing Down the Wall by isocketTech Coming To Direct Sales - Tearing Down the Wall by isocket
Tech Coming To Direct Sales - Tearing Down the Wall by isocket
 
Spanish and Catalan University Libraries; Some Facts and Trends
Spanish and Catalan University Libraries; Some Facts and TrendsSpanish and Catalan University Libraries; Some Facts and Trends
Spanish and Catalan University Libraries; Some Facts and Trends
 
Lean Learning: Deliver Relevant Content When and Where It’s Needed
Lean Learning: Deliver Relevant Content When and Where It’s NeededLean Learning: Deliver Relevant Content When and Where It’s Needed
Lean Learning: Deliver Relevant Content When and Where It’s Needed
 
Synergistic Treatment Charts 2016
Synergistic Treatment Charts 2016Synergistic Treatment Charts 2016
Synergistic Treatment Charts 2016
 
Tema 4 controladores de nivel ici-equipo plc
Tema 4 controladores de nivel  ici-equipo plcTema 4 controladores de nivel  ici-equipo plc
Tema 4 controladores de nivel ici-equipo plc
 
OAuth 2.0 refresher Talk
OAuth 2.0 refresher TalkOAuth 2.0 refresher Talk
OAuth 2.0 refresher Talk
 

Similaire à AdWords API Feed Services

API Update Rundown
API Update RundownAPI Update Rundown
API Update Rundownmarcwan
 
AdWords Scripts
AdWords ScriptsAdWords Scripts
AdWords Scriptsmarcwan
 
Reporting tips & tricks
Reporting tips & tricks  Reporting tips & tricks
Reporting tips & tricks marcwan
 
AwReporting Tool
AwReporting ToolAwReporting Tool
AwReporting Toolmarcwan
 
Google Adwords API
Google Adwords APIGoogle Adwords API
Google Adwords APIMrkt360 Inc.
 
Getting Started with AdWords API and Google Analytics
Getting Started with AdWords API and Google AnalyticsGetting Started with AdWords API and Google Analytics
Getting Started with AdWords API and Google Analyticsmarcwan
 
AdWords API - How to build a platform
AdWords API - How to build a platformAdWords API - How to build a platform
AdWords API - How to build a platformTimoBoz
 
Rate limits and performance Talk
Rate limits and performance TalkRate limits and performance Talk
Rate limits and performance Talkmarcwan
 
Mobile landing pages
Mobile landing pagesMobile landing pages
Mobile landing pagesmarcwan
 
Why use ad words api
Why use ad words apiWhy use ad words api
Why use ad words apisupergigas
 
GMB API (Google My Business)
GMB API (Google My Business)GMB API (Google My Business)
GMB API (Google My Business)supergigas
 
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)Google tag manager fundamentals question and answer (june 23 and july 24, 2015)
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)Mahendra Patel
 
Extension Setting Services
Extension Setting ServicesExtension Setting Services
Extension Setting Servicessupergigas
 
Shopping Campaigns and AdWords API
Shopping Campaigns and AdWords APIShopping Campaigns and AdWords API
Shopping Campaigns and AdWords APImarcwan
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsApigee | Google Cloud
 

Similaire à AdWords API Feed Services (20)

API Update Rundown
API Update RundownAPI Update Rundown
API Update Rundown
 
AdWords Scripts
AdWords ScriptsAdWords Scripts
AdWords Scripts
 
Reporting tips & tricks
Reporting tips & tricks  Reporting tips & tricks
Reporting tips & tricks
 
AwReporting Tool
AwReporting ToolAwReporting Tool
AwReporting Tool
 
Google Adwords API
Google Adwords APIGoogle Adwords API
Google Adwords API
 
Getting Started with AdWords API and Google Analytics
Getting Started with AdWords API and Google AnalyticsGetting Started with AdWords API and Google Analytics
Getting Started with AdWords API and Google Analytics
 
AdWords API - How to build a platform
AdWords API - How to build a platformAdWords API - How to build a platform
AdWords API - How to build a platform
 
Rate limits and performance Talk
Rate limits and performance TalkRate limits and performance Talk
Rate limits and performance Talk
 
Mobile landing pages
Mobile landing pagesMobile landing pages
Mobile landing pages
 
Api (1)
Api (1)Api (1)
Api (1)
 
Upgraded URLs
Upgraded URLsUpgraded URLs
Upgraded URLs
 
Why use ad words api
Why use ad words apiWhy use ad words api
Why use ad words api
 
GMB API (Google My Business)
GMB API (Google My Business)GMB API (Google My Business)
GMB API (Google My Business)
 
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)Google tag manager fundamentals question and answer (june 23 and july 24, 2015)
Google tag manager fundamentals question and answer (june 23 and july 24, 2015)
 
E-Bazaar
E-BazaarE-Bazaar
E-Bazaar
 
Extension Setting Services
Extension Setting ServicesExtension Setting Services
Extension Setting Services
 
Api manager preconference
Api manager preconferenceApi manager preconference
Api manager preconference
 
Shopping Campaigns and AdWords API
Shopping Campaigns and AdWords APIShopping Campaigns and AdWords API
Shopping Campaigns and AdWords API
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIs
 
Adobe Analytics training course
Adobe Analytics training courseAdobe Analytics training course
Adobe Analytics training course
 

Plus de marcwan

Opportunity Analysis with Kratu
Opportunity Analysis with KratuOpportunity Analysis with Kratu
Opportunity Analysis with Kratumarcwan
 
AdWords API & OAuth 2.0, Advanced
AdWords API & OAuth 2.0, Advanced AdWords API & OAuth 2.0, Advanced
AdWords API & OAuth 2.0, Advanced marcwan
 
AdWords Scripts and MCC Scripting
AdWords Scripts and MCC ScriptingAdWords Scripts and MCC Scripting
AdWords Scripts and MCC Scriptingmarcwan
 
AwReporting Update
AwReporting UpdateAwReporting Update
AwReporting Updatemarcwan
 
API Updates for v201402
API Updates for v201402API Updates for v201402
API Updates for v201402marcwan
 
AdWords API Targeting Options
AdWords API Targeting OptionsAdWords API Targeting Options
AdWords API Targeting Optionsmarcwan
 
Reporting Tips and Tricks (Spanish)
Reporting Tips and Tricks (Spanish)Reporting Tips and Tricks (Spanish)
Reporting Tips and Tricks (Spanish)marcwan
 
Rate limits and performance (Spanish)
Rate limits and performance (Spanish)Rate limits and performance (Spanish)
Rate limits and performance (Spanish)marcwan
 
OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)marcwan
 
End to-end how to build a platform (Spanish)
End to-end how to build a platform (Spanish)End to-end how to build a platform (Spanish)
End to-end how to build a platform (Spanish)marcwan
 
AwReporting tool introduction (Spanish)
AwReporting tool introduction (Spanish)AwReporting tool introduction (Spanish)
AwReporting tool introduction (Spanish)marcwan
 
Api update rundown (Spanish)
Api update rundown (Spanish)Api update rundown (Spanish)
Api update rundown (Spanish)marcwan
 
Mobile landing pages (Spanish)
Mobile landing pages (Spanish)Mobile landing pages (Spanish)
Mobile landing pages (Spanish)marcwan
 
Rate limits and performance
Rate limits and performanceRate limits and performance
Rate limits and performancemarcwan
 
OAuth 2.0 refresher
OAuth 2.0 refresherOAuth 2.0 refresher
OAuth 2.0 refreshermarcwan
 
End to-end how to build a platform
End to-end how to build a platformEnd to-end how to build a platform
End to-end how to build a platformmarcwan
 
AwReporting Tool
AwReporting ToolAwReporting Tool
AwReporting Toolmarcwan
 
Api update rundown
Api update rundownApi update rundown
Api update rundownmarcwan
 
AdWords Scripts
AdWords ScriptsAdWords Scripts
AdWords Scriptsmarcwan
 
Reporting tips & tricks (russian)
Reporting tips & tricks (russian)Reporting tips & tricks (russian)
Reporting tips & tricks (russian)marcwan
 

Plus de marcwan (20)

Opportunity Analysis with Kratu
Opportunity Analysis with KratuOpportunity Analysis with Kratu
Opportunity Analysis with Kratu
 
AdWords API & OAuth 2.0, Advanced
AdWords API & OAuth 2.0, Advanced AdWords API & OAuth 2.0, Advanced
AdWords API & OAuth 2.0, Advanced
 
AdWords Scripts and MCC Scripting
AdWords Scripts and MCC ScriptingAdWords Scripts and MCC Scripting
AdWords Scripts and MCC Scripting
 
AwReporting Update
AwReporting UpdateAwReporting Update
AwReporting Update
 
API Updates for v201402
API Updates for v201402API Updates for v201402
API Updates for v201402
 
AdWords API Targeting Options
AdWords API Targeting OptionsAdWords API Targeting Options
AdWords API Targeting Options
 
Reporting Tips and Tricks (Spanish)
Reporting Tips and Tricks (Spanish)Reporting Tips and Tricks (Spanish)
Reporting Tips and Tricks (Spanish)
 
Rate limits and performance (Spanish)
Rate limits and performance (Spanish)Rate limits and performance (Spanish)
Rate limits and performance (Spanish)
 
OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)OAuth 2.0 (Spanish)
OAuth 2.0 (Spanish)
 
End to-end how to build a platform (Spanish)
End to-end how to build a platform (Spanish)End to-end how to build a platform (Spanish)
End to-end how to build a platform (Spanish)
 
AwReporting tool introduction (Spanish)
AwReporting tool introduction (Spanish)AwReporting tool introduction (Spanish)
AwReporting tool introduction (Spanish)
 
Api update rundown (Spanish)
Api update rundown (Spanish)Api update rundown (Spanish)
Api update rundown (Spanish)
 
Mobile landing pages (Spanish)
Mobile landing pages (Spanish)Mobile landing pages (Spanish)
Mobile landing pages (Spanish)
 
Rate limits and performance
Rate limits and performanceRate limits and performance
Rate limits and performance
 
OAuth 2.0 refresher
OAuth 2.0 refresherOAuth 2.0 refresher
OAuth 2.0 refresher
 
End to-end how to build a platform
End to-end how to build a platformEnd to-end how to build a platform
End to-end how to build a platform
 
AwReporting Tool
AwReporting ToolAwReporting Tool
AwReporting Tool
 
Api update rundown
Api update rundownApi update rundown
Api update rundown
 
AdWords Scripts
AdWords ScriptsAdWords Scripts
AdWords Scripts
 
Reporting tips & tricks (russian)
Reporting tips & tricks (russian)Reporting tips & tricks (russian)
Reporting tips & tricks (russian)
 

Dernier

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Dernier (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

AdWords API Feed Services

  • 1. AdWords API Workshops – All rights reserved
  • 2. Feed Services Managing Feeds with the AdWords API Adam Ohren, Google, Inc. AdWords API Workshops – All rights reserved
  • 3. Agenda ● ● ● ● ● ● Feed Concepts Creating New Feeds Populating Ad Extensions Reporting Best Practices Reuse of our Example Code AdWords API Workshops – All rights reserved
  • 4. Feed Concepts AdWords API Workshops – All rights reserved
  • 5. What is a Feed? Feed ● Account-level table ● Collection of mutable rows ● Data provider for ad extensions ○ Sitelink extensions ○ Call extensions ○ App extensions AdWords API Workshops – All rights reserved Attr1 Attr2 Attr3 Item1 Val1 Val2 Val3 Item2 Val4 Val5 Val6
  • 6. Feed Benefits Feed ● ● ● ● Dynamically update extensions Modify extensions in-place Retain reporting stats FeedItem-level device preference AdWords API Workshops – All rights reserved Attr1 Attr2 Attr3 Item1 Val1 Val2 Val3 Item2 Val4 Val5 Val6
  • 8. A Database Analogy AdWords API Workshops – All rights reserved Ad Extension
  • 9. All the Pieces Data AdWords API Workshops – All rights reserved Extension Type Ad Extensions
  • 10. Feed Services API ● ● ● ● ● FeedService FeedItem Service FeedMapping Service CampaignFeed Service AdGroupFeed Service AdWords API Workshops – All rights reserved
  • 11. Creating New Feeds AdWords API Workshops – All rights reserved
  • 12. Creating New Feeds 1. Create 2. Populate 3. Map AdWords API Workshops – All rights reserved
  • 13. Creating New Feeds To do this... …call this... ...with these! Create FeedService Feed FeedAttribute Populate FeedItemService FeedItem FeedItemAttribute Map FeedMappingService FeedMapping AdWords API Workshops – All rights reserved
  • 14. Create ● Adds new named collection of data ● Defines columns names & types AdWords API Workshops – All rights reserved
  • 15. Create 1. Create Feed a. Set name 2. Add FeedAttributes a. Set names b. Set types 3. Call FeedService.ADD AdWords API Workshops – All rights reserved
  • 16. Populate ● Inserts actual row items into the Feed ● Indicates per-item device preference (optional) ● Configures per-item time period (optional) AdWords API Workshops – All rights reserved
  • 17. Populate 1. Create FeedItem a. Set feedId 2. Add FeedItemAttributeValues a. Set feedAttributeId b. Set value 3. Call FeedItemService.ADD AdWords API Workshops – All rights reserved
  • 18. Map ● Declares which ad extensions can use Feed ● Defines which Feed columns are used in extension AdWords API Workshops – All rights reserved
  • 19. Map 1. Create FeedMapping a. set feedId b. set placeholderType 2. Add AttributeFieldMappings a. set feedAttributeId b. set fieldId 3. Call FeedMappingService.ADD AdWords API Workshops – All rights reserved
  • 20. Populating Ad Extensions AdWords API Workshops – All rights reserved
  • 21. Using Feed Data in Ad Extensions Feed FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem AdWords API Workshops – All rights reserved
  • 22. Using Feed Data in Ad Extensions Feed FeedItem matchingFunction FeedItem CampaignFeed Campaign AdGroupFeed AdGroup FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem AdWords API Workshops – All rights reserved matchingFunction
  • 23. Associate with Campaigns & AdGroups ● Adds ad extensions to Campaigns or AdGroups ● Defines how to pick FeedItems via a matching function AdWords API Workshops – All rights reserved
  • 24. Associating to Campaigns & AdGroups 1. Create CampaignFeed a. set feedId b. set campaignId c. set placeholderTypes 2. Add a matching Function a. set operator b. set operands 3. Call CampaignFeed.ADD AdWords API Workshops – All rights reserved
  • 25. Matching Functions Feed FeedItem FeedItem FeedItem matchingFunction CampaignFeed Campaign AdGroupFeed AdGroup FeedItemId IN (id1, id2, …) FeedItem FeedItem FeedItem FeedItem FeedItem FeedItem AdWords API Workshops – All rights reserved matchingFunction FeedItemId IN (idA, idB, …)
  • 26. Matching Functions Feed Campaign / AdGroup FeedItemId IN (6435602, 6436202) AdWords API Workshops – All rights reserved
  • 27. Reporting AdWords API Workshops – All rights reserved
  • 28. Feed-based Reporting Ad Extensions Performance Report ● DomainInfo ● Location ● LocationSync ● Sitelinks ● Mobile ● InAppLink AdWords API Workshops – All rights reserved Placeholder Feed Item Report ● Sitelinks ● Mobile ● InAppLink
  • 29. Placeholder Feed Item Report ● FeedItem-level statistics ● PlaceholderType ⇔ Ad extension type ● Sitelink ● Call ● App AdWords API Workshops – All rights reserved
  • 30. Best Practices AdWords API Workshops – All rights reserved
  • 31. Using Built-in ADWORDS Feeds ● Each ad extension type has a default Feed pre-built ● Main sitelink feed ● Main phone number feed ● Main app feed ● Feed.origin = “ADWORDS” ● FeedAttributes (schema) are immutable AdWords API Workshops – All rights reserved
  • 32. Using User Defined Feeds ● Displayed in a dropdown alongside built-in Feeds ● Feed.origin = “USER” ● FeedAttributes (schema) are appendable AdWords API Workshops – All rights reserved
  • 33. Deleting Things Feed Entries ● Delete FeedItem AdWords API Workshops – All rights reserved VS Ad Extensions ● Remove Id from matching function
  • 34. Feed Trivia ● One CampaignFeed / AdGroupFeed per PlaceholderType ● Don’t send existing FeedAttributes in Feed.SET operations ● No validation on FeedItemIds in matchingFunctions ● Maximum of 20 Feeds per account ● Including built-in ADWORDS Feeds ● Can only delete Feeds & FeedItems via API (not UI) AdWords API Workshops – All rights reserved
  • 35. Reusing Our Example Code How to change our code to your bidding AdWords API Workshops – All rights reserved
  • 36. Use The Code, Luke! ● Examples available for each Client Library ○ https://developers.google.com/adwords/api/docs/clientlibraries ● Don’t do the hard work yourself ● Start with the Sitelinks examples ● Convert that to Calls or other Extensions AdWords API Workshops – All rights reserved
  • 37. PLACEHOLDERs - what are they for? What kind of Feed or Field you’re using is set by the PLACEHOLDERs you assign, for example: PLACEHOLDER_SITELINKS = 1; PLACEHOLDER_CALL = 2; ... PLACEHOLDER_FIELD_CALL_ONLY = 4; See: https://developers.google.com/adwords/api/docs/appendix/placeholders AdWords API Workshops – All rights reserved
  • 38. Fields Add the required Fields for that Extension: ● Sitelink: Text, URL (up to 6 pairs) ● Call or : Phone Number, Country Code, isCallTracking, Mobile : isCallOnly, Conversion Duration Threshold ● App : Store, Id, Link Text, URL AdWords API Workshops – All rights reserved
  • 39. Then just tidy up ● Rename stuff to make sense The example code will have method and parameter names that say SiteLink in them. Change these to Call or App or whatever, to match what you’re doing. AdWords API Workshops – All rights reserved
  • 40. Then just tidy up ● Ensure you include all the Attributes you’re using: FeedAttribute textAttribute = new FeedAttribute(); textAttribute.setType(FeedAttributeType.STRING); textAttribute.setName("Link Text"); Becomes: FeedAttribute numberAttribute = new FeedAttribute(); numberAttribute.setType(FeedAttributeType.STRING); numberAttribute.setName("Phone Number"); : AdWords API Workshops – All rights reserved
  • 41. Then just tidy up ● Get the right FeedAttributeType: FeedAttribute iCOAttribute = new FeedAttribute(); iCOAttribute.setType(FeedAttributeType.BOOLEAN); iCOAttribute.setName("Is Call Only"); AdWords API Workshops – All rights reserved
  • 42. Then just tidy up ● Get the right AttributeId in the right place: Feed savedFeed = result.getValue()[0]; // a new FeedReturnValue callData.callFeedId = savedFeed.getId(); // a data holder object FeedAttribute[] savedAttributes = savedFeed.getAttributes(); callData.numberFeedAttributeId = savedAttributes[0].getId(); callData.ccFeedAttributeId = savedAttributes[1].getId(); callData.iCTFeedAttributeId = savedAttributes[2].getId(); ... // other Attribute lines AdWords API Workshops – All rights reserved
  • 44. Questions? AdWords API Workshops – All rights reserved
  • 45. AdWords API Workshops – All rights reserved