The condition and action parameters exist in nested structures in the JSON:
Cart condition parameters are nested under condition.cartCondition
Product condition parameters are nested under condition.productCondition
Combo product condition parameters are nested under condition.comboProductCondition
Tender condition parameters are nested under condition.tenderCondition
Cart-based action parameters are nested under action.cartBasedAction
Product-based action parameters are nested under action.productBasedAction
Product-based condition parameters are nested under action.productBasedAction.productBasedCondition
Tender-based action parameters are nested under action.tenderBasedAction
Tender condition must be paired with a tender action for consistency.
Default value for maxIssuancePerCustomer is 1, with valid range from -1 to 50.
Default value for isStackable is false.
Default value for priority is 0.
Priority values should be unique within a campaign for deterministic behavior.
All datetime values are in milliseconds since epoch in UTC timezone.
When stacking is enabled, the stacking strategy at the organization level determines how multiple promotions are applied.
Read-only fields cannot be set in requests but are included in responses.
For tender conditions, CARD type requires an identifier specifying the card network or bank.
The combo product condition is satisfied when ALL individual product conditions in the array are met, creating a bundle or meal-deal type of promotion.
This API is not currently exposed externally.
Validation Rules:
Percentage values must be between 0 and 100
Amount values must be positive and have up to 2 decimal places
Dates must be valid future timestamps
Priority values must be unique within a campaign
Product quantities must be positive integers
Error Handling:
Invalid combinations of conditions and actions will return a 400 Bad Request
Missing required fields will return a 400 Bad Request
Invalid parameter values will return a 400 Bad Request
System errors will return a 500 Internal Server Error
Promotion API Parameters
Basic Parameters
Parameter
Data Type
Description
Basic Promotion Info
name*
string
Unique name for this cart promotion (max 50 characters).
orgId*
long
Your organization's ID number.
priority*
int
Sets which cart promotions is applied first (higher number = higher priority). Default is 0.
active*
boolean
Turns cart promotion on (true) or off (false). Inactive promotions don't apply even if conditions match.
messageLabel*
string
Text shown to customers when cart promotion applies, like "Holiday Sale 25% Off".