AdWords to teraz Google Ads. Nowa nazwa oddaje pełny zakres usług reklamowych, jakie oferujemy m.in. w wyszukiwarce, sieci reklamowej i YouTube.. Więcej informacji

Obecnie 102 forumowiczów jest online
Obecnie 102 forumowiczów jest online
Dla pytań związanych z funkcjami remarketingu, strategii stawek, Edytor AdWords i skryptów Google Ads.
Poprowadź mnie
star_border
Odpowiedz

Skrypt, który zmienia modyfikatory stawek na urządzeniach mobilnych

Wszechwiedzący ✭

Cześć,

 

Na innym forum dostałem zapytnie odnośnie skryptu, który zmieni modyfikator stawek na urządzeniach mobilnych na wybranych kampaniach.

Drugim założeniem było aby zmiana następowała tylko na weekend.

 

Czyli np. w tygodniu -50% na mobile, a w weekend -20%.

 

Skrypt zmieni stawki na kampaniach, które mają dodane eteykiety (jej wartość należy podać w ustawieniach).

 

Harmonogram należy ustawić na: co dzinnie i 11pm (w innym wypadku może nie działać prawidłowo).

 

Wrzucam może komuś też się przyda.

 

//Configuration
var YOUR_LABEL = "script"; //Add labels on the campaigns you want to change bid modifiers. This value is case SENSITIVE!
var WEEK_BID = 0.50; //0.2 is -80%, 1.2 is +20%, 0.7 is -30%, 1.7 is +70% and so on....
var WEEKEND_BID = 0.20; // same as above
//End of the configuration

function main() {
var date = new Date();
var day = date.getDay();
  if (day === 4) {
changeMobileBidAdjustment(WEEKEND_BID);
  }
  if (day === 6) {
changeMobileBidAdjustment(WEEK_BID);    
}
}

function changeMobileBidAdjustment(bidMod) {
  try {
  var campaings = AdWordsApp
  .campaigns()
  .forDateRange('TODAY')
  .withCondition('LabelNames CONTAINS_ANY [' + YOUR_LABEL + ']')
  .get();
  }
catch(err) {
   throw new Error("You have to add your label to the account first!");
  }
  if (campaings.totalNumEntities() === 0){
    throw new Error("In order to run the script add your label to at least one campaign!");
  }    
while(campaings.hasNext()) {
var campaign = campaings.next();
var BidAdjustments = campaign.targeting().platforms().mobile().get();
var mobileBidAdjustment = BidAdjustments.next()
Logger.log("I'm changing the mobile bid modifier on the campaign: " + campaign.getName() + " from: " + mobileBidAdjustment.getBidModifier() + " to: " + bidMod)
mobileBidAdjustment.setBidModifier(bidMod)
}
}

 

Czy moja odpowiedź była pomocna? Jeśli tak, oznacz ją jako „najlepszą odpowiedź”