Search Ads 360

  • This script retrieves a list of agency and advertiser IDs accessible to a Google Account.

  • It requires configuring with your client ID, client secret, and refresh token, and also depends on the OAuth2 library.

  • The initializeOAuthClient function sets up the OAuth client using the provided credentials and scope.

  • The generateSearchAds360AdvertiserReport function makes a request to the Search Ads 360 API to generate a report containing agency and advertiser information.

Retrieve account's list of agency and advertiser IDs

/**  * Retrieves a list of all the agency and advertiser IDs that the Google Account  * has permission to view.  * See: https://developers.google.com/google-ads/scripts/docs/features/third-party-apis#refresh_token_grant  * for details on configuring this script.  *  * NOTE: This script also requires the OAuth2 library to be pasted at the end,  * as obtained from https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library  */ const CLIENT_ID = 'INSERT_CLIENT_ID'; const CLIENT_SECRET = 'INSERT_CLIENT_SECRET'; const REFRESH_TOKEN = 'INSERT_REFRESH_TOKEN'; let authUrlFetch; // Call this function just once, to initialize the OAuth client. function initializeOAuthClient() {  if (typeof OAuth2 === 'undefined') {  const libUrl = 'https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library';  throw Error('OAuth2 library not found. Please take a copy of the OAuth2 ' +  'library from ' + libUrl + ' and append to the bottom of this script.');  }  const tokenUrl = 'https://accounts.google.com/o/oauth2/token';  const scope = 'https://www.googleapis.com/auth/doubleclicksearch';  authUrlFetch = OAuth2.withRefreshToken(  tokenUrl, CLIENT_ID, CLIENT_SECRET, REFRESH_TOKEN, scope); } // An example DS request - taken from // https://developers.google.com/search-ads/v2/how-tos/reporting/faq const body = {  reportType: 'advertiser',  columns: [  {columnName: 'agency'}, {columnName: 'agencyId'},  {columnName: 'advertiser'}, {columnName: 'advertiserId'}  ],  statisticsCurrency: 'usd' }; // Request an Advertiser report and return the resulting report object. function generateSearchAds360AdvertiserReport() {  const url = 'https://www.googleapis.com/doubleclicksearch/v2/reports/generate';  const options = {  method: 'POST',  contentType: 'application/json',  payload: JSON.stringify(body)  };  const response = authUrlFetch.fetch(url, options);  // For now, just log the generated report response.  return JSON.parse(response.getContentText()); } // Paste in OAuth2 library here, from: // https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library