---
title: "Set the publishing budgets for a promotion"
method: PATCH
path: "/v1/promotions/{promotionId}/publishingBudgets"
tags: ["preview", "PromotionCommand"]
---

# Set the publishing budgets for a promotion

`PATCH /v1/promotions/{promotionId}/publishingBudgets`

Set the recurring and lifetime publishing budgets for this promotion, in promotion caps, in cent amounts and in unit counts.

## Path parameters

- `promotionId` string, required

## Request body

- PromotioncommandSetPublishingBudgets
  - `budgets` BudgetBudget[]
    - `timeframe` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'LIFETIME'
    - `unitRewardBudget` BudgetUnitRewardBudget
      - `unitCount` integer
      - `unitRewardTypeId` string
    - `capBudget` BudgetCapBudget
      - `cap` integer
    - `amountRewardBudget` BudgetAmountRewardBudget
      - `amountCents` integer
      - `amountRewardTypeId` string

## Response `200`

A successful response.

- PromotioncommandserviceTransactionCommittedResponse
  - `requestId` string
  - `promotionId` string
  - `availableCommands` PromotioncommandAvailableCommand[]
    - `command` 'CREATE' | 'ACTIVATE' | 'DEACTIVATE' | 'ARCHIVE' | 'SET_METADATA' | 'SET_PROMOTION_TIERS' | 'SET_PROPERTIES' | 'DUPLICATE' | 'SET_REWARD_CONSTRAINTS' | 'SET_PUBLISHING_BUDGETS' | 'REQUEST_BUDGETS_STATUS'
    - `url` string
    - `httpMethod` 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'
  - `events` PromotioneventEvent[]
    - `revision` integer
    - `created` PromotioneventCreated
    - `activated` PromotioneventActivated
    - `deactivated` PromotioneventDeactivated
    - `archived` PromotioneventArchived
    - `metadataSet` PromotioneventMetadataSet
      - `name` string
      - `description` string
    - `propertiesSet` PromotioneventPropertiesSet
      - `properties` object
    - `promotionTiersSet` EventPromotionTiersSet
      - `promotionTiers` TierPromotionTier[]
        - `conditionTree` ConditionBranch[]
          - `parent` integer
          - `customerCondition` ConditionCustomerCondition
            - `property` string
            - `isNot` boolean
            - `stringInList` PromotionconditionStringInList
              - …
            - `numberGreaterEqual` ConditionNumberGreaterEqual
              - …
            - `numberLesserEqual` ConditionNumberLesserEqual
              - …
            - `numberBetween` ConditionNumberBetweenInclusive
              - …
            - `timestampGreaterEqual` ConditionTimestampGreaterEqual
              - …
            - `propertyReference` 'CUSTOMER_PROPERTY' | 'SESSION_PROPERTY' | 'PROMOTION_PROPERTY'
        - `amountReward` TierAmountReward
          - `amountCents` integer
          - `amountRewardTypeId` string
        - `percentAmountReward` TierPercentAmountReward
          - `amountPercent` number, double
          - `propertyId` string
          - `amountRewardTypeId` string
          - `rounding` TierRounding
            - `down` integer
            - `up` integer
            - `nearest` integer
            - `multiple` number, double
          - `propertyReference` 'CUSTOMER_PROPERTY' | 'SESSION_PROPERTY' | 'PROMOTION_PROPERTY'
        - `percentUnitReward` TierPercentUnitReward
          - `unitPercent` number, double
          - `propertyId` string
          - `unitRewardTypeId` string
          - `rounding` TierRounding
            - `down` integer
            - `up` integer
            - `nearest` integer
            - `multiple` number, double
          - `propertyReference` 'CUSTOMER_PROPERTY' | 'SESSION_PROPERTY' | 'PROMOTION_PROPERTY'
        - `unitReward` TierUnitReward
          - `unitCount` integer
          - `unitRewardTypeId` string
        - `formulaUnitReward` TierFormulaUnitReward
          - `formula` string
          - `unitRewardTypeId` string
        - `formulaAmountReward` TierFormulaAmountReward
          - `formula` string
          - `amountRewardTypeId` string
    - `rewardConstraintsSet` EventRewardConstraintsSet
      - `amountConstraints` object
      - `unitConstraints` object
    - `publishingBudgetsSet` EventPublishingBudgetsSet
      - `budgets` BudgetBudget[]
        - `timeframe` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'LIFETIME'
        - `unitRewardBudget` BudgetUnitRewardBudget
          - `unitCount` integer
          - `unitRewardTypeId` string
        - `capBudget` BudgetCapBudget
          - `cap` integer
        - `amountRewardBudget` BudgetAmountRewardBudget
          - `amountCents` integer
          - `amountRewardTypeId` string
    - `publishingBudgetsStatusRequested` EventBudgetsStatusRequested

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/optimove/apis/optimove-api.md) · [All operations](https://skmtc.net/optimove/apis/optimove-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/optimove/optimove-api/revisions/fc55c5b1bec5/schema)
