You will need to pass a security review to go live with your integration.Follow our guide to get approved as fast as possible.
Create your OAuth App
1
Create a Google Cloud account
If you don’t already have one, sign up for a Google Cloud account.
2
Create a new project
- Go to the Google Cloud Console.
- Click on the project dropdown at the top left of the page.
- Click New Project.
- Enter a Project Name for your project.
- Under Location, select the appropriate organization or folder where this project should belong.
If you’re not part of an organization, it will default to No organization
- Click Create and wait for the project to be created.
- Select it from the project dropdown.
3
Enable the APIs you need
- Go to the API Library in the Google Cloud Console.
- Search for Google Ads API and click Enable.
4
Configure the OAuth consent screen
- Go to APIs & Services > OAuth consent screen in the Google Cloud Console.
- Click Get started.
- Fill in all the required fields in the App Information form.
- Click Next. Select the appropriate Audience:
- External: For applications available to any Google user
- Internal: For applications restricted to users within your Google Workspace organization
- Click Next. Fill in the Contact Information; these are the email addresses that Google will use to notify you about any changes to your project.
- Click Next, then check the I agree to the Google API Services: User Data Policy checkbox, and click Continue.
- Add the scopes your application needs. Under Data Access, click Add or Remove Scopes and select the scopes that correspond to the APIs you enabled.
Make sure to select scopes based on the APIs you enabled earlier when setting up the app. See Google’s OAuth 2.0 Scopes documentation for all available scopes.
- Under Audience, click Add users if you selected External user type (required for testing before verification).
5
Create OAuth 2.0 credentials
- Go to APIs & Services > Credentials in the Google Cloud Console.
- Click Create Credentials and select OAuth client ID.
- Select Web application as the application type.
- Enter a name for your OAuth client.
- Under Authorized redirect URIs, add
https://api.nango.dev/oauth/callback.
While setting up the OAuth credentials, the Authorized JavaScript origins should be your site URL (
https://app.nango.dev if you’re testing from the Nango UI).- Click Create.
- A dialog will appear with your client ID and client secret. Save these credentials securely as you’ll need them when configuring your integration in Nango.
Google allows up to 100 refresh tokens per account per OAuth client ID. New tokens overwrite the oldest without warning when the limit is reached.
6
Get your Google Ads developer token
The Google Ads API requires a developer token on every request, separate from your OAuth client ID and secret.
- Sign in to a Google Ads manager account (create one if you don’t already have one).
- Go to Admin > API Center.
- Copy your developer token.
New developer tokens start at “Test Account Access,” which only works against Google Ads test accounts. To use it with real (production) accounts, apply for Basic or Standard access from the same API Center page — this can take a few days to be approved. See Google’s access levels documentation for details.
If you access your users’ Google Ads accounts through a manager (MCC) account, you’ll also need that manager account’s customer ID (without hyphens) — this is
login_customer_id. If every one of your end users brings their own manager account instead, you can skip this step and let them enter it during connect.7
Apply your developer token to every connection
The developer token isn’t something Nango asks each end user for — it belongs to your app, not to any individual Google Ads account. Set it once as a connection config default instead:If you also always access accounts through the same manager account, include If your end users each have their own manager account instead, leave
login_customer_id in the same object so it’s set automatically instead of shown in the Connect UI:login_customer_id out of the defaults — it’ll appear as an optional field in the Connect UI for them to fill in themselves.For agents
For agents
Pass
developer_token under integrations_config_defaults.<INTEGRATION-ID>.connection_config when creating a connect session via the create connect session API — it’s marked automated: true in the provider config, so it never appears in the Connect UI and must be supplied by your backend at session-creation time.login_customer_id is a regular, optional connection_config field, not automated. Include it in the same defaults object if your integration always uses one fixed manager account; omit it if it varies per end user, and it’ll be collected in the Connect UI instead.8
Start building your integration
Follow the Quickstart to build your integration.
9
Verify your app
Most Google Ads scopes are marked “sensitive” by Google.You can develop your integration in test mode, but you need to pass a security review to go live.Follow our guide to prepare and pass as quickly as possible.
For applications using sensitive or restricted scopes, Google requires verification and a security assessment. This process can take several weeks to complete.
10
Publish your app (switch from Testing to Production)
To move your OAuth app from testing to production:
- Go to APIs & Services > OAuth consent screen > Audience.
- Click Publish App to switch your app from testing to production.