- var urlToPause = "optmyzr.com";
- var labelText = "Emergency Button Pushed";
- var mode = "resume"; // Put in either pause or resume
+ var urlToPause = "www.optmyzr.com"; // put in the domain that's broken
+ var labelText = "Emergency Button Pushed"; // Put in the text for the AdWords label to attach
+ var mode = "pause"; // Put in either pause or resume (resume is used to find items paused by this script and re-emnable them)
var adGroupsToPause = new Array();
var adGroupsToResume = new Array();
'SELECT AdGroupName, AdGroupId ' +
'FROM FINAL_URL_REPORT ' +
'WHERE AdGroupStatus = ENABLED ' +
- 'AND EffectiveFinalUrl CONTAINS_IGNORE_CASE "' + urlToPause + '"' );
+ 'AND EffectiveFinalUrl CONTAINS_IGNORE_CASE "' + urlToPause + '" ' +
+ 'AND Impressions >= 0 ' +
+ 'DURING LAST_30_DAYS');
var rows = report.rows();
var adGroupId = row['AdGroupId'];
if(adGroupsToPause.indexOf(adGroupId) == -1) {
- Logger.log(adGroupName + " contains the final URL " + urlToPause);
+ Logger.log(adGroupName + " contains the final URL " + urlToPause + " (" + adGroupId + ")");
adGroupsToPause.push(adGroupId);
Logger.log("ad group ID: " + adGroupId);
var adGroupIterator = AdWordsApp.adGroups()
//.withCondition('Id = "INSERT_CAMPAIGN_NAME_HERE"')
- .withCondition('Id = '+ adGroupId)
+ .withCondition('Id IN ['+ adGroupId + ']')
if (adGroupIterator.hasNext()) {
var adGroup = adGroupIterator.next();
// RE-ENABLE PAUSED AD GROUPS
else if(mode.toLowerCase().indexOf("resume") != -1) {
// GET AD GROUPS THAT USE THE LABEL
var report = AdWordsApp.report(
'SELECT AdGroupName, AdGroupId ' +
- 'FROM AD_PERFORMANCE_REPORT ' +
+ 'FROM ADGROUP_PERFORMANCE_REPORT ' +
'WHERE LabelIds CONTAINS_ANY [' + labelId + ']');
var rows = report.rows();
var adGroupName = row['AdGroupName'];
var adGroupId = row['AdGroupId'];
+ Logger.log(adGroupName + " has the label " + labelText);
if(adGroupsToResume.indexOf(adGroupId) == -1) {
Logger.log(adGroupName + " contains the final URL " + urlToPause);
adGroupsToResume.push(adGroupId);
+ // RESUME THESE AD GROUPS
+ for(var i = 0; i < adGroupsToResume.length; i++) {
+ var adGroupId = adGroupsToResume[i];
+ Logger.log("ad group ID: " + adGroupId);
+ var adGroupIterator = AdWordsApp.adGroups()
+ //.withCondition('Id = "INSERT_CAMPAIGN_NAME_HERE"')
+ .withCondition('Id IN ['+ adGroupId + ']')
+ if (adGroupIterator.hasNext()) {
+ var adGroup = adGroupIterator.next();
+ Logger.log('Ad Group Name: ' + adGroup.getName());
+ Logger.log('Enabled: ' + adGroup.isEnabled());
+ adGroup.removeLabel(labelText);