Proximity

  • Proximity targets can be added to a campaign using the addProximity method, specifying latitude, longitude, radius, and radius units.

  • Proximity targets can also include an optional address and bid modifier.

  • Existing proximity targets for a campaign can be retrieved using the targeting().targetedProximities().get() method.

Add a proximity target to a campaign

function addProximityTargets(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();  // Add a proximity target of 20 kilometers around Google New York office.  // To obtain coordinates of a given point on Google Maps,  // see https://support.google.com/maps/answer/18539  campaign.addProximity(40.741144, -74.002086, 20, 'KILOMETERS');  // You could also add proximity by an address. However, we don't validate  // if the address you put matches the given latitude and longitude. It has  // no functionality except to change what shows up in the Campaign  // Management interface.  // Add a proximity target of 10 kilometers around Google Mountain View  // office.  campaign.addProximity({  latitude: 37.423021,  longitude: -122.083739,  radius: 10,  radiusUnits: 'KILOMETERS',  bidModifier: 0.75,  address: {  streetAddress: '1600 Amphitheatre Parkway',  cityName: 'Mountain View',  provinceName: 'California',  provinceCode: 'CA',  postalCode: '94043',  countryCode: 'US'  }  }); }

Get the list of all proximity targets for a campaign

function getTargetedProximities(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().targetedProximities().get(); }