---
title: "Get a promotion by id"
method: GET
path: "/v1/promotions/{promotionId}"
tags: ["PromotionQuery"]
---

# Get a promotion by id

`GET /v1/promotions/{promotionId}`

## Path parameters

- `promotionId` string, required

## Response `200`

A successful response.

- PromotionqueryserviceGetByIdResponse
  - `promotionId` string
  - `metadata` PromotioneventMetadataSet
    - `name` string
    - `description` string
  - `properties` object
  - `conditionTree` ConditionBranch[]
    - `parent` integer
    - `customerCondition` ConditionCustomerCondition
      - `property` string
      - `isNot` boolean
      - `stringInList` PromotionconditionStringInList
        - `values` string[]
      - `numberGreaterEqual` ConditionNumberGreaterEqual
        - `value` number, double
      - `numberLesserEqual` ConditionNumberLesserEqual
        - `value` number, double
      - `numberBetween` ConditionNumberBetweenInclusive
        - `begin` number, double
        - `end` number, double
      - `timestampGreaterEqual` ConditionTimestampGreaterEqual
        - `timestamp` string, date-time
      - `propertyReference` 'CUSTOMER_PROPERTY' | 'SESSION_PROPERTY' | 'PROMOTION_PROPERTY'
  - `promotionTiers` TierPromotionTier[]
    - `conditionTree` ConditionBranch[]
      - `parent` integer
      - `customerCondition` ConditionCustomerCondition
        - `property` string
        - `isNot` boolean
        - `stringInList` PromotionconditionStringInList
          - `values` string[]
        - `numberGreaterEqual` ConditionNumberGreaterEqual
          - `value` number, double
        - `numberLesserEqual` ConditionNumberLesserEqual
          - `value` number, double
        - `numberBetween` ConditionNumberBetweenInclusive
          - `begin` number, double
          - `end` number, double
        - `timestampGreaterEqual` ConditionTimestampGreaterEqual
          - `timestamp` string, date-time
        - `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
  - `state` 'NOT_EXIST' | 'DRAFT' | 'ACTIVE' | 'INACTIVE' | 'ARCHIVED'
  - `promocodes` object
  - `version` integer
  - `createdAt` string, date-time
  - `updatedAt` string, date-time
  - `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'
  - `rewardConstraints` EventRewardConstraintsSet
    - `amountConstraints` object
    - `unitConstraints` object
  - `publishingBudgets` EventPublishingBudgetsSet
    - `budgets` BudgetBudget[]
      - `timeframe` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'LIFETIME'
      - `unitRewardBudget` BudgetUnitRewardBudget
        - `unitCount` integer
        - `unitRewardTypeId` string
      - `capBudget` BudgetCapBudget
        - `cap` integer
      - `amountRewardBudget` BudgetAmountRewardBudget
        - `amountCents` integer
        - `amountRewardTypeId` string
  - `rewardConsumption` AuditRewardConsumption
    - `amountsCents` object
    - `unitCount` object
    - `cap` AuditConsumptionTimeframes
      - `daily` string, uint64
      - `weekly` string, uint64
      - `monthly` string, uint64
      - `lifetime` string, uint64
  - `publishingStatus` 'RUNNING' | 'PAUSED' | 'COMPLETED' | 'PENDING'

## 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)
