API-toegang (AdWords): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
 
(15 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 1: Regel 1:
 +
''Zie ook [[Python]].''
 +
 
Het is mogelijk om via een API aan te koppelen bij Google's AdWords-servers, om zo te interacteren met AdWords-campagnes. ''No you're playing with power''. De AdWords API gebruikt SOAP. Bibliotheken zijn beschikbaar voor Java, PHP, Python, .NET, Perl en Ruby. Daarnaast zijn er libraries beschikbaar voor diverse ''use cases''.  
 
Het is mogelijk om via een API aan te koppelen bij Google's AdWords-servers, om zo te interacteren met AdWords-campagnes. ''No you're playing with power''. De AdWords API gebruikt SOAP. Bibliotheken zijn beschikbaar voor Java, PHP, Python, .NET, Perl en Ruby. Daarnaast zijn er libraries beschikbaar voor diverse ''use cases''.  
  
Regel 8: Regel 10:
 
# Maak een ''test manager''- en ''test client''-account aan via je ''Manager Account''
 
# Maak een ''test manager''- en ''test client''-account aan via je ''Manager Account''
 
# Configureer je ontwikkelomgeving
 
# Configureer je ontwikkelomgeving
# Configureer OAuth2-autenticatie
+
# Configureer OAuth2-authenticatie
 
# Configureer je client-applicatie
 
# Configureer je client-applicatie
 
# Maak je eerste API-call.
 
# Maak je eerste API-call.
Regel 20: Regel 22:
 
== Configureer je ontwikkelomgeving ==
 
== Configureer je ontwikkelomgeving ==
  
[https://www.youtube.com/watch?v=yaDlZMfYWkg Deze video] maakt gebruik van Java + Eclipse. Ook:
+
[https://www.youtube.com/watch?v=yaDlZMfYWkg Deze video, vanaf 2:55] (Java + Eclipse)
 +
 
 +
* Download Eclipse → Ik gebruik ''Sublime Editor''
 +
* Download Maven Client Library voor Java. Deze bevat teven code-voorbeelden → Overeenkomstige Python-bibliotheek gedownload
 +
* Importeer de Maven-bibliotheek. Let op eventuele foutmeldingen en mogelijk additionele vereise bibliotheken → Zie hieronder
 +
* Configureer OAuth2-authenticatie → Zie hieronder.
 +
 
 +
== Download & configureer library ==
 +
 
 +
=== Installeer pip ===
 +
 
 +
''pip'' is een tool voor installatie en configuratie van Python packages. Installatie:
 +
 
 +
sudo apt-get install -y python-pip
 +
 
 +
=== Installeer setuptools ===
 +
 
 +
pip install -U pip setuptools
 +
 
 +
=== Bijwerken pip ===
 +
 
 +
Nav. een waarschuwing:
 +
 
 +
pip install --upgrade pip
 +
 
 +
=== Download library ===
 +
 
 +
sudo -H pip install googleads
 +
 
 +
Opmerkingen:
 +
 
 +
* <code>sudo</code> gebruikt, anders foutmeldingen tav. bijwerken overige bestanden
 +
* <code>-H</code> gebruikt, zodat de bestanden van 'mij' zijn, en niet van de superuser, of zoiets.
 +
 
 +
== Configureer authenticatie ==
 +
 
 +
[[file:20170724-1654.png|thumb|Een mijlpaal: M'n eigen standalone-app wil toegang tot m'n AdWords-account]]
 +
 
 +
=== Download googleads.yaml ===
 +
 
 +
Dit bestand wordt gebruikt om credentials in op te slaan. Download 't bestand vanaf [https://github.com/googleads/googleads-python-lib#how-do-i-get-started hier] en plaats 'm in je werkmap.
 +
 
 +
=== OAuth2-tokens genereren ===
 +
 
 +
* App-type: ''Installed app''
 +
* Ga naar http://oauth.net/2/
 +
* ''OAuth consent screen:'' Application-type: ''Other'' (?). Naam: ''Other client 1''
 +
* Maak een nieuw project aan » ''Create credentials'' » ''OAuth client ID'' » Een ''OAuth Client-ID & OAuth client secret'' aangemaakt
 +
* ''generate_refresh_token.py'' gedownload en in huidige werkmap geplaatst
 +
* <code>python generate_refresh_token.py --client_id INSERT_CLIENT_ID --client_secret INSERT_CLIENT_SECRET</code> (met uiteraard de juiste id's). Dit genereerde een URL, die vervolgens het authenticatie-scherm hiernaast genereerde. Vervolgens kreeg ik een code terug, die ik weer invoegde in de terminal. Die zei dat alles goed was + ik kreeg een ''access token'' en een ''refresh token''
 +
 
 +
=== Tokens invoegen in googleads.yaml ===
 +
 
 +
Het gaat om deze dingen:
 +
 
 +
* developer_token
 +
* client_id
 +
* client_secret
 +
* refresh_token.
 +
 
 +
Invullen spreekt verder voor zich.
 +
 
 +
== TOT HIER GEKOMEN ==
  
* Download library
+
* Wellicht dat die video 2 verder kan helpen
* OAuth2-authenticatie
+
* Of anders https://github.com/googleads/googleads-python-lib/wiki/API-access-using-own-credentials-(installed-application-flow)
  
 
== Bronnen ==
 
== Bronnen ==
 +
 +
=== Algemeen ===
  
 
* https://developers.google.com/adwords/api/
 
* https://developers.google.com/adwords/api/
 
* http://www.sagerock.com/blog/setting-google-adwords-api-access-first-time/ - Aardige handleiding voor PHP+Windows. Niet erg relevant voor Linux
 
* http://www.sagerock.com/blog/setting-google-adwords-api-access-first-time/ - Aardige handleiding voor PHP+Windows. Niet erg relevant voor Linux
 
https://developer-blog.net/en/programming/google-adwords-api-part-1/
 
https://developer-blog.net/en/programming/google-adwords-api-part-1/
 +
 +
=== Algemeen - Video's ===
  
 
* https://www.youtube.com/watch?v=80KOeuCNc0c - AdWords API DevBytes Episode 1: Why Use the AdWords API?
 
* https://www.youtube.com/watch?v=80KOeuCNc0c - AdWords API DevBytes Episode 1: Why Use the AdWords API?
 
* https://www.youtube.com/watch?v=yaDlZMfYWkg - AdWords API DevBytes Episode 2: Getting to “Hello, World!”
 
* https://www.youtube.com/watch?v=yaDlZMfYWkg - AdWords API DevBytes Episode 2: Getting to “Hello, World!”
 +
 +
=== Libraries ===
 +
 +
* https://developers.google.com/adwords/api/docs/clientlibraries
 +
* https://github.com/googleads/googleads-python-lib#how-do-i-get-started
 +
 +
=== Authenticatie ===
 +
 +
* https://github.com/googleads/googleads-python-lib#how-do-i-get-started
 +
* https://github.com/googleads/googleads-python-lib/wiki/API-access-using-own-credentials-(installed-application-flow)

Huidige versie van 24 jul 2017 om 17:11

Zie ook Python.

Het is mogelijk om via een API aan te koppelen bij Google's AdWords-servers, om zo te interacteren met AdWords-campagnes. No you're playing with power. De AdWords API gebruikt SOAP. Bibliotheken zijn beschikbaar voor Java, PHP, Python, .NET, Perl en Ruby. Daarnaast zijn er libraries beschikbaar voor diverse use cases.

Mijn interesse is primair Custom reporting (aka. as Automated reporting). Hier biedt Google oa. dashboard-libraries voor aan.

In zes stappen naar 'Hello, world!'

  1. Verkrijg een Developer Token
  2. Maak een test manager- en test client-account aan via je Manager Account
  3. Configureer je ontwikkelomgeving
  4. Configureer OAuth2-authenticatie
  5. Configureer je client-applicatie
  6. Maak je eerste API-call.

Verkrijg een Developer Token

  • Om een Developer Token aan te vragen, heb je een Manager Account nodig
  • Aanvraag van het token gaat via het Manager Account: Gear-menu » Account settings » AdWords API Center 1:47
  • In afwachting van de ontvangst van het token, kun je via een testaccount alvast testen ca. 2:00. Dat schijnt sowieso een goed idee te zijn.

Configureer je ontwikkelomgeving

Deze video, vanaf 2:55 (Java + Eclipse)

  • Download Eclipse → Ik gebruik Sublime Editor
  • Download Maven Client Library voor Java. Deze bevat teven code-voorbeelden → Overeenkomstige Python-bibliotheek gedownload
  • Importeer de Maven-bibliotheek. Let op eventuele foutmeldingen en mogelijk additionele vereise bibliotheken → Zie hieronder
  • Configureer OAuth2-authenticatie → Zie hieronder.

Download & configureer library

Installeer pip

pip is een tool voor installatie en configuratie van Python packages. Installatie:

sudo apt-get install -y python-pip

Installeer setuptools

pip install -U pip setuptools

Bijwerken pip

Nav. een waarschuwing:

pip install --upgrade pip

Download library

sudo -H pip install googleads

Opmerkingen:

  • sudo gebruikt, anders foutmeldingen tav. bijwerken overige bestanden
  • -H gebruikt, zodat de bestanden van 'mij' zijn, en niet van de superuser, of zoiets.

Configureer authenticatie

Een mijlpaal: M'n eigen standalone-app wil toegang tot m'n AdWords-account

Download googleads.yaml

Dit bestand wordt gebruikt om credentials in op te slaan. Download 't bestand vanaf hier en plaats 'm in je werkmap.

OAuth2-tokens genereren

  • App-type: Installed app
  • Ga naar http://oauth.net/2/
  • OAuth consent screen: Application-type: Other (?). Naam: Other client 1
  • Maak een nieuw project aan » Create credentials » OAuth client ID » Een OAuth Client-ID & OAuth client secret aangemaakt
  • generate_refresh_token.py gedownload en in huidige werkmap geplaatst
  • python generate_refresh_token.py --client_id INSERT_CLIENT_ID --client_secret INSERT_CLIENT_SECRET (met uiteraard de juiste id's). Dit genereerde een URL, die vervolgens het authenticatie-scherm hiernaast genereerde. Vervolgens kreeg ik een code terug, die ik weer invoegde in de terminal. Die zei dat alles goed was + ik kreeg een access token en een refresh token

Tokens invoegen in googleads.yaml

Het gaat om deze dingen:

  • developer_token
  • client_id
  • client_secret
  • refresh_token.

Invullen spreekt verder voor zich.

TOT HIER GEKOMEN

Bronnen

Algemeen

https://developer-blog.net/en/programming/google-adwords-api-part-1/

Algemeen - Video's

Libraries

Authenticatie