Budgets

  • Learn how to set the budget for a specific campaign by name.

  • Discover how to retrieve the budget object associated with a campaign.

  • Understand how to log detailed information about a campaign's budget, including its amount, delivery method, shared status, and associated campaigns if it's a shared budget.

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());  }  } }