Как обновить название бюджета, сумму и biddingStrategyType бюджета кампании в Google AdWords API?

У меня уже есть бюджет кампании, который я хочу обновить с помощью Google AdWords API.

   BudgetServiceInterface budgetService =
        adWordsServices.get(session, BudgetServiceInterface.class);

    // Create a budget, which can be shared by multiple campaigns.
    Budget sharedBudget = new Budget();
    sharedBudget.setName("Interplanetary Cruise #" + System.currentTimeMillis());
    Money budgetAmount = new Money();
    budgetAmount.setMicroAmount(50_000_000L);
    sharedBudget.setAmount(budgetAmount);
    sharedBudget.setDeliveryMethod(BudgetBudgetDeliveryMethod.STANDARD);

    BudgetOperation budgetOperation = new BudgetOperation();
    budgetOperation.setOperand(sharedBudget);
    budgetOperation.setOperator(Operator.ADD);

    // Add the budget
    Long budgetId =
        budgetService.mutate(new BudgetOperation[] {budgetOperation}).getValue(0).getBudgetId();

    // Get the CampaignService.
    CampaignServiceInterface campaignService =
        adWordsServices.get(session, CampaignServiceInterface.class);

Назначение budgetId кампании

    Budget budget = new Budget();
    budget.setBudgetId(budgetId);
    campaign.setBudget(budget);

Это приведет к отмене назначения существующего бюджета кампании и назначению нового бюджета кампании (бюджет кампании не удаляется и все еще существует в рекламе Google), но я хочу обновить название бюджета и сумму бюджета существующего бюджета кампании, а не назначать новый бюджет кампании.

0 ответов

Используйте для этого BudgetService. вы можете найти более подробную информацию в документации

        $budget = new Budget();
        $budget->setBudgetId(BUDGET_ID);
        $budget->setStatus(BudgetBudgetStatus::REMOVED);            
        $operation = new BudgetOperation();
        $operation->setOperand($budget);
        $operation->setOperator(Operator::SET);
        $operations[] = $operation;