Search Ads 360

계정에서 기관 및 광고주 ID 목록 검색

/**
 * 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