Budgets

Set a campaign budget

function setCampaignBudget(name, amount) {   const campaignIterator = AdsApp.campaigns()       .withCondition(`campaign.name = '${name}'`)       .get();   if (!campaignIterator.hasNext()) {     throw new Error(`No campaign with name '${name}' found.`);   }   const campaign = campaignIterator.next();   campaign.getBudget().setAmount(amount); }

Get campaign budget

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

Log campaign budget details

function logBudgetDetails(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();   const budget = campaign.getBudget();    console.log(`Budget amount: ${budget.getAmount()}`);   console.log(`Delivery method: ${budget.getDeliveryMethod()}`);   console.log(`Explicitly shared: ${budget.isExplicitlyShared()}`);    // If this is a shared budget, log all the associated campaigns.   // If this is not a shared budget, don't bother since the only associated   // campaign is the one specified by 'campaignName'.   if (budget.isExplicitlyShared()) {     const budgetCampaignIterator = budget.campaigns().get();     console.log(`=======`);     console.log(`Associated campaigns (${budgetCampaignIterator.totalNumEntities()}):`);      for (const associatedCampaign of budgetCampaignIterator) {       console.log(associatedCampaign.getName());     }   } }