RAdwords is a R package with the aim to load Adwords data into R. Therefore the package implements three main features. First, the package provides an authentication process for R with the Adwords API via OAUTH2. Second, the package offers an interface to apply the Adwords query language in R and query the Adwords API with ad-hoc reports. Third, the received data are transformed into suitable data formats for further data processing and data analysis.
We provide a detailed documentation here: RAdwords Documentation
The following section helps you to get started straight away.
The package can be installed from CRAN
or directly from this Github repository with:
In order to access the Adwords API you have to set up a Google API project for native apps. The Google API project provides a Client Id and Client Secret which is necessary for the authentication. Moreover you need to have a Adwords MCC with an Adwords developer token.
The function doAuth
manages the complete authentication process. Meaning doAuth
authenticates the R app for the first time, loads the access token or refreshes the access token if expired. Hence, you only run doAuth()
to authenticate whether it is your initial R Session or a later instance.
Once the API projects for native application is set up, getAuth
is able to authenticate the R app with the credentials (Client Id, Client Secret) from the Google API project. The Google authentication server returns a client token, which later is used by loadToken
to receive the access token. If the access token is expired after one hour, it can be updated with refreshToken
. The access token in combination with the Adwords developer token enables a connection with the Adwords API.
statement
creates the Adwords Query Language Statement.
getData
queries the data from the Adwords API and transforms the data into an R dataframe.
body <- statement(select = c('Clicks', 'AveragePosition', 'Cost', 'Ctr'),
report = "ACCOUNT_PERFORMANCE_REPORT",
start = "2018-01-01",
end = "2018-01-10")
# make sure to use the Adwords Account Id (MCC Id will not work)
data <- getData(clientCustomerId = 'xxx-xxx-xxxx',
google_auth = google_auth,
statement = body)