OAuth Service Account Flow

  • This guide explains how to set up OAuth2 for API access using service accounts, a one-time process unless credentials are changed.

  • The setup requires a Google Workspace domain and a service account with domain-wide delegation access granted by a super administrator.

  • You need to generate a service account ID and JSON file before configuring the client library.

  • The client library setup involves specifying the path to your JSON keyfile and the email address to impersonate within your google_ads_config.rb file.

This guide will walk you through how to setup OAuth2 for API access using your own credentials using service accounts. These steps only need to be done once, unless you revoke or delete your OAuth2 credentials.

Create OAuth2 credentials

Generate a service account ID and a *.JSON file by following the linked instructions, then come back to this page.

Set up client library with JSON file

Configure the following keys in your google_ads_config.rb.

c.keyfile = 'path/to/keyfile.json'
c.impersonate = 'INSERT_EMAIL_ADDRESS_TO_IMPERSONATE_HERE'