Olá Pessoal,
Estou enfrentando um problema, nos últimos dias venho constantemente tentando desenvolver um script dentro do google que permita aumentar o CPA desejado das campanhas de forma automática.
Alguns código até chegam a ser disparado sem problemas, mas eles não executam a ação. Algo semelhante a API do google não permitir a execução total do script.
Abaixo deixarei o último código que utilizei e que não deu problema:
function main() {
// Incremento no CPA desejado (em dólares)
const CPA_INCREMENT = 0.02;
// Itera sobre todas as campanhas com Target CPA configurado
const campaignIterator = AdsApp.campaigns()
.withCondition("Status = 'ENABLED'")
.withCondition("BiddingStrategyType = 'TARGET_CPA'")
.get();
while (campaignIterator.hasNext()) {
const campaign = campaignIterator.next();
// Acessa o tipo de estratégia de lances configurada na campanha
try {
const biddingStrategyType = campaign.getBiddingStrategyType();
// Verifica se a campanha realmente usa Target CPA
if (biddingStrategyType === 'TARGET_CPA') {
const currentTargetCpa = campaign.bidding().getTargetCpa();
if (currentTargetCpa !== null) {
const newTargetCpa = currentTargetCpa + CPA_INCREMENT;
campaign.bidding().setTargetCpa(newTargetCpa);
Logger.log(
`Campanha: ${campaign.getName()} - CPA atualizado de $${currentTargetCpa.toFixed(2)} para $${newTargetCpa.toFixed(2)}`
);
} else {
Logger.log(
`Campanha: ${campaign.getName()} não possui Target CPA configurado diretamente.`
);
}
} else {
Logger.log(
`Campanha: ${campaign.getName()} não está configurada com TARGET_CPA, tipo de lance: ${biddingStrategyType}`
);
}
} catch (e) {
Logger.log(
`Erro ao processar a campanha: ${campaign.getName()} - ${e.message}`
);
}
}
}