---
updatedAt: 2026-08-19T11:52:43.000Z
agentTools:
  projectIndex: https://developer.optimove.com/llms.txt
---

# Refresh budgets status for a promotion

This updates budgets status for a promotion, should not be called directly, handled automatically.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "OptiPromo Promotion Command API",
    "description": "The Promotion Command API is designed to manage promotions within the OptiPromo system. This service can be accessed via RESTful HTTP endpoints. It includes a variety of methods that allow for the creation, duplication, activation, deactivation, archiving, and management of promotions. The service also supports operations to set metadata, properties, condition trees, and promotion tiers for existing promotions. Multiple operations may be performed in a single transaction.",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://optipromo-promotions-eu.optimove.net",
      "description": "EU region"
    },
    {
      "url": "https://optipromo-promotions-us.optimove.net",
      "description": "US region"
    }
  ],
  "tags": [
    {
      "name": "PromotionCommand"
    }
  ],
  "paths": {
    "/v1/promotions/{promotionId}/budgetsStatus": {
      "patch": {
        "summary": "Refresh budgets status for a promotion",
        "description": "This updates budgets status for a promotion, should not be called directly, handled automatically.",
        "operationId": "PromotionCommand_RequestBudgetsStatus",
        "responses": {
          "200": {
            "description": "A successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/promotioncommandserviceTransactionCommittedResponse"
                }
              }
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/rpcStatus"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "promotionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/promotioncommandRequestBudgetsStatus"
              }
            }
          },
          "required": true
        },
        "tags": [
          "internal",
          "PromotionCommand"
        ]
      }
    }
  },
  "security": [
    {
      "api_key": []
    }
  ],
  "components": {
    "securitySchemes": {
      "api_key": {
        "type": "apiKey",
        "name": "x-api-key",
        "in": "header"
      }
    },
    "schemas": {
      "budgetAmountRewardBudget": {
        "type": "object",
        "properties": {
          "amountCents": {
            "type": "integer",
            "format": "int64"
          },
          "amountRewardTypeId": {
            "type": "string"
          }
        }
      },
      "budgetBudget": {
        "type": "object",
        "properties": {
          "timeframe": {
            "$ref": "#/components/schemas/budgetBudgetTimeframe"
          },
          "unitRewardBudget": {
            "$ref": "#/components/schemas/budgetUnitRewardBudget"
          },
          "capBudget": {
            "$ref": "#/components/schemas/budgetCapBudget"
          },
          "amountRewardBudget": {
            "$ref": "#/components/schemas/budgetAmountRewardBudget"
          }
        }
      },
      "budgetBudgetTimeframe": {
        "type": "string",
        "enum": [
          "BUDGET_TIMEFRAME_UNSPECIFIED",
          "DAILY",
          "WEEKLY",
          "MONTHLY",
          "LIFETIME"
        ],
        "default": "BUDGET_TIMEFRAME_UNSPECIFIED"
      },
      "budgetCapBudget": {
        "type": "object",
        "properties": {
          "cap": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "budgetUnitRewardBudget": {
        "type": "object",
        "properties": {
          "unitCount": {
            "type": "integer",
            "format": "int64"
          },
          "unitRewardTypeId": {
            "type": "string"
          }
        }
      },
      "conditionBranch": {
        "type": "object",
        "properties": {
          "parent": {
            "type": "integer",
            "format": "int32"
          },
          "customerCondition": {
            "$ref": "#/components/schemas/conditionCustomerCondition"
          }
        }
      },
      "conditionCustomerCondition": {
        "type": "object",
        "properties": {
          "property": {
            "type": "string"
          },
          "isNot": {
            "type": "boolean"
          },
          "stringInList": {
            "$ref": "#/components/schemas/promotionconditionStringInList"
          },
          "numberGreaterEqual": {
            "$ref": "#/components/schemas/conditionNumberGreaterEqual"
          },
          "numberLesserEqual": {
            "$ref": "#/components/schemas/conditionNumberLesserEqual"
          },
          "numberBetween": {
            "$ref": "#/components/schemas/conditionNumberBetweenInclusive"
          },
          "timestampGreaterEqual": {
            "$ref": "#/components/schemas/conditionTimestampGreaterEqual"
          }
        }
      },
      "conditionNumberBetweenInclusive": {
        "type": "object",
        "properties": {
          "begin": {
            "type": "number",
            "format": "double"
          },
          "end": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "conditionNumberGreaterEqual": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "conditionNumberLesserEqual": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "conditionTimestampGreaterEqual": {
        "type": "object",
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "eventBudgetsStatusRequested": {
        "type": "object"
      },
      "eventPromotionTiersSet": {
        "type": "object",
        "properties": {
          "promotionTiers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/tierPromotionTier"
            }
          }
        }
      },
      "eventPublishingBudgetsSet": {
        "type": "object",
        "properties": {
          "budgets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/budgetBudget"
            }
          }
        }
      },
      "eventRewardConstraintsSet": {
        "type": "object",
        "properties": {
          "amountConstraints": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/rewardAmountConstraint"
            }
          },
          "unitConstraints": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/rewardUnitConstraint"
            }
          }
        }
      },
      "promotioncommandAvailableCommand": {
        "type": "object",
        "properties": {
          "command": {
            "$ref": "#/components/schemas/promotioncommandCommandType"
          },
          "url": {
            "type": "string"
          },
          "httpMethod": {
            "$ref": "#/components/schemas/promotioncommandHttpMethod"
          }
        }
      },
      "promotioncommandCommandType": {
        "type": "string",
        "enum": [
          "COMMAND_TYPE_UNSPECIFIED",
          "CREATE",
          "ACTIVATE",
          "DEACTIVATE",
          "ARCHIVE",
          "SET_METADATA",
          "SET_PROMOTION_TIERS",
          "SET_PROPERTIES",
          "DUPLICATE",
          "SET_REWARD_CONSTRAINTS",
          "SET_PUBLISHING_BUDGETS",
          "REQUEST_BUDGETS_STATUS"
        ],
        "default": "COMMAND_TYPE_UNSPECIFIED"
      },
      "promotioncommandHttpMethod": {
        "type": "string",
        "enum": [
          "HTTP_METHOD_UNSPECIFIED",
          "GET",
          "POST",
          "PUT",
          "DELETE",
          "PATCH"
        ],
        "default": "HTTP_METHOD_UNSPECIFIED"
      },
      "promotioncommandRequestBudgetsStatus": {
        "type": "object"
      },
      "promotioncommandserviceTransactionCommittedResponse": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string"
          },
          "promotionId": {
            "type": "string"
          },
          "availableCommands": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/promotioncommandAvailableCommand"
            }
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/promotioneventEvent"
            }
          }
        }
      },
      "promotionconditionStringInList": {
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "promotioneventActivated": {
        "type": "object"
      },
      "promotioneventArchived": {
        "type": "object"
      },
      "promotioneventCreated": {
        "type": "object"
      },
      "promotioneventDeactivated": {
        "type": "object"
      },
      "promotioneventEvent": {
        "type": "object",
        "properties": {
          "revision": {
            "type": "integer",
            "format": "int32"
          },
          "created": {
            "$ref": "#/components/schemas/promotioneventCreated"
          },
          "activated": {
            "$ref": "#/components/schemas/promotioneventActivated"
          },
          "deactivated": {
            "$ref": "#/components/schemas/promotioneventDeactivated"
          },
          "archived": {
            "$ref": "#/components/schemas/promotioneventArchived"
          },
          "metadataSet": {
            "$ref": "#/components/schemas/promotioneventMetadataSet"
          },
          "propertiesSet": {
            "$ref": "#/components/schemas/promotioneventPropertiesSet"
          },
          "promotionTiersSet": {
            "$ref": "#/components/schemas/eventPromotionTiersSet"
          },
          "rewardConstraintsSet": {
            "$ref": "#/components/schemas/eventRewardConstraintsSet"
          },
          "publishingBudgetsSet": {
            "$ref": "#/components/schemas/eventPublishingBudgetsSet"
          },
          "publishingBudgetsStatusRequested": {
            "$ref": "#/components/schemas/eventBudgetsStatusRequested"
          }
        }
      },
      "promotioneventMetadataSet": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        }
      },
      "promotioneventPropertiesSet": {
        "type": "object",
        "properties": {
          "properties": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/propertyProperty"
            }
          }
        }
      },
      "propertyMultiStringValue": {
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "propertyNumberValue": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "propertyProperty": {
        "type": "object",
        "properties": {
          "null": {
            "type": "string"
          },
          "timestampValue": {
            "$ref": "#/components/schemas/propertyTimestampValue"
          },
          "stringValue": {
            "$ref": "#/components/schemas/propertyStringValue"
          },
          "numberValue": {
            "$ref": "#/components/schemas/propertyNumberValue"
          },
          "multiStringValue": {
            "$ref": "#/components/schemas/propertyMultiStringValue"
          }
        }
      },
      "propertyStringValue": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          }
        }
      },
      "propertyTimestampValue": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "protobufAny": {
        "type": "object",
        "properties": {
          "@type": {
            "type": "string"
          }
        },
        "additionalProperties": {}
      },
      "rewardAmountConstraint": {
        "type": "object",
        "properties": {
          "minAmountCents": {
            "type": "integer",
            "format": "int64"
          },
          "maxAmountCents": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "rewardUnitConstraint": {
        "type": "object",
        "properties": {
          "minUnitCount": {
            "type": "integer",
            "format": "int64"
          },
          "maxUnitCount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "rpcStatus": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string"
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/protobufAny"
            }
          }
        }
      },
      "tierAmountReward": {
        "type": "object",
        "properties": {
          "amountCents": {
            "type": "integer",
            "format": "int32"
          },
          "amountRewardTypeId": {
            "type": "string"
          }
        }
      },
      "tierFormulaAmountReward": {
        "type": "object",
        "properties": {
          "formula": {
            "type": "string"
          },
          "amountRewardTypeId": {
            "type": "string"
          }
        }
      },
      "tierFormulaUnitReward": {
        "type": "object",
        "properties": {
          "formula": {
            "type": "string"
          },
          "unitRewardTypeId": {
            "type": "string"
          }
        }
      },
      "tierPercentAmountReward": {
        "type": "object",
        "properties": {
          "amountPercent": {
            "type": "number",
            "format": "double"
          },
          "propertyId": {
            "type": "string"
          },
          "amountRewardTypeId": {
            "type": "string"
          },
          "rounding": {
            "$ref": "#/components/schemas/tierRounding"
          },
          "customerPropertyId": {
            "type": "string"
          },
          "sessionPropertyId": {
            "type": "string"
          }
        }
      },
      "tierPercentUnitReward": {
        "type": "object",
        "properties": {
          "unitPercent": {
            "type": "number",
            "format": "double"
          },
          "propertyId": {
            "type": "string"
          },
          "unitRewardTypeId": {
            "type": "string"
          },
          "rounding": {
            "$ref": "#/components/schemas/tierRounding"
          },
          "customerPropertyId": {
            "type": "string"
          },
          "sessionPropertyId": {
            "type": "string"
          }
        }
      },
      "tierPromotionTier": {
        "type": "object",
        "properties": {
          "conditionTree": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/conditionBranch"
            }
          },
          "amountReward": {
            "$ref": "#/components/schemas/tierAmountReward"
          },
          "percentAmountReward": {
            "$ref": "#/components/schemas/tierPercentAmountReward"
          },
          "percentUnitReward": {
            "$ref": "#/components/schemas/tierPercentUnitReward"
          },
          "unitReward": {
            "$ref": "#/components/schemas/tierUnitReward"
          },
          "formulaUnitReward": {
            "$ref": "#/components/schemas/tierFormulaUnitReward"
          },
          "formulaAmountReward": {
            "$ref": "#/components/schemas/tierFormulaAmountReward"
          }
        }
      },
      "tierRounding": {
        "type": "object",
        "properties": {
          "down": {
            "type": "integer",
            "format": "int32"
          },
          "up": {
            "type": "integer",
            "format": "int32"
          },
          "nearest": {
            "type": "integer",
            "format": "int32"
          },
          "multiple": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "tierUnitReward": {
        "type": "object",
        "properties": {
          "unitCount": {
            "type": "integer",
            "format": "int32"
          },
          "unitRewardTypeId": {
            "type": "string"
          }
        }
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  }
}
```