Location

将广告系列定位到某个国家/地区

function targetFrance(campaignName) {
  const campaignIterator = AdsApp.campaigns()
      .withCondition(`campaign.name = "${campaignName}"`)
      .get();
  if (!campaignIterator.hasNext()) {
    throw new Error(`No campaign with name "${campaignName}" found`);
  }

  const campaign = campaignIterator.next();
  // Target France (location id = 2250) and set a bid modifier of +50%. See
  // https://developers.google.com/google-ads/api/reference/data/geotargets
  // for details.
  campaign.addLocation(2250, 1.5);
}

获取广告系列定位到的地理位置列表

function getTargetedLocations(campaignName) {
  const campaignIterator = AdsApp.campaigns()
      .withCondition(`campaign.name = "${campaignName}"`)
      .get();
  if (!campaignIterator.hasNext()) {
    throw new Error(`No campaign with name "${campaignName}" found`);
  }

  const campaign = campaignIterator.next();
  return campaign.targeting().targetedLocations().get();
}

从广告系列中移除指定地理位置

function untargetFrance(campaignName) {
  const campaignIterator = AdsApp.campaigns()
      .withCondition(`campaign.name = "${campaignName}"`)
      .get();
  if (!campaignIterator.hasNext()) {
    throw new Error(`No campaign with name "${campaignName}" found`);
  }

  const campaign = campaignIterator.next();
  // Remove targeting for France (location id = 2250). See
  // https://developers.google.com/google-ads/api/reference/data/geotargets
  // for details.
  const targetedLocationIterator = AdsApp.targeting()
      .targetedLocations()
      .withIds([[campaign.getId(), 2250]]).get();
  if (targetedLocationIterator.hasNext()) {
    targetedLocationIterator.next().remove();
  }
}