updatePromotion
put
/ccadmin/v1/promotions/{id}
Update an existing promotion. **Requires the x-ccasset-language header so translated content can be set for a specific language.**
Request
Supported Media Types
- application/json
Path Parameters
-
id: string
ID corresponding to the promotion to udpate.
Header Parameters
-
X-CCAsset-Language: string
The asset language of the request
Properties to update on the promotion.
Root Schema : updatePromotion_request
Type:
Show Source
object
-
audiences(optional):
array audiences
List of audiences to which the promotion is limited. An empty list implies no restrictions.
-
cardIINRanges(optional):
array cardIINRanges
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
-
closenessQualifiers(optional):
array closenessQualifiers
Array of message sets that apply to a specific criteria for displaying a partially-qualified upsell message to a shopper. Partial qualification is based on the threshold value specified in templateValues.See online documentation for more details.
-
description(optional):
string
The description of the promotion.
-
displayName(optional):
string
The display name of the promotion.
-
enableConversion(optional):
boolean
Enables promotion data conversion for promotions based on upgraded templates. Default value is 'false'.
-
enabled(optional):
boolean
Whether or not the promotion is currently enabled.
-
endDate(optional):
string
When this promotion ceases to be active
-
excludedPromotions(optional):
array excludedPromotions
List of promotions to be excluded from the current promotion. Item promotions can exclude promotions of type: item, order, shipping. Order promotions can exclude promotion of type order and shipping. Shipping promotions can only exclude another shipping promotions.
-
maxUsesPerOrder(optional):
integer
Number of times a promotion can be applied to an order, -1 indicates that the same promotion can be applied unlimited number of times
-
parentFolder(optional):
object parentFolder
Map of promotion folder's repository ID key and value. In order to remove the folder assignment, set parentFolder to null e.g. "parentFolder": null
-
priceListGroups(optional):
array priceListGroups
The price List Groups
-
priority(optional):
string
The priority of this promotion over other promotions
-
qualifiedMessages(optional):
array qualifiedMessages
Promotion upsell messages to display when the shopper has qualified for the promotion.
-
shippingMethods(optional):
array shippingMethods
Shipping Methods for which the promotion should be applied
-
sites(optional):
array sites
This will limit the promotion to being applicable only to the 1+ specified sites. An empty array means the promotion applies to all sites.
-
startDate(optional):
string
When this promotion becomes active
-
templateValues(optional):
object templateValues
Specifies the template values that are used as part of the promotion to control its behavior
-
unqualifiedMessages(optional):
array unqualifiedMessages
Promotion upsell messages to display when the shopper has not yet qualified for the promotion.
Example:
{
"endDate":"2014-04-29T19:30:00.000-04:00",
"maxUSesPerOrder":-1,
"displayName":"10% Off Orders Over $100 ",
"templateValues":{
"spend_value":"100",
"discount_value":"10",
"discount_type_value":"percentOff",
"spend_close_value":"5.00"
},
"description":"Spend $100 today and get 10% off your order!",
"sites":[
{
"repositoryId":"funSite"
},
{
"repositoryId":"anotherFunSite"
}
],
"priority":1,
"enabled":true,
"cardIINRanges":[
"456789",
"9878",
"987634-987648"
],
"excludedPromotions":[
{
"repositoryId":"explicitItemFixedDiscount"
},
{
"repositoryId":"bogoPromotion"
}
],
"unqualifiedMessages":[
{
"message":"Buy something to qualify for this promotion.",
"tags":[
{
"name":"Banner"
}
]
}
],
"parentFolder":{
"repositoryId":"promoFolder100001"
},
"enableConversion":true,
"qualifiedMessages":[
{
"message":"You have qualified for the promotion!",
"tags":[
{
"name":"Banner"
}
]
}
],
"audiences":[
{
"repositoryId":"audienceId1"
},
{
"repositoryId":"audienceId2"
}
],
"startDate":"2014-04-25T17:30:00.000-04:00",
"shippingMethods":[
"priorityShippingMethod",
"groundShippingMethod"
],
"closenessQualifiers":[
{
"closenessMessages":[
{
"message":"You're getting close! Buy {{QuantityStillNeeded}} more!",
"tags":[
{
"name":"Daily Deals"
},
{
"name":"Banner"
}
]
}
]
}
]
}
Nested Schema : audiences
Type:
array
List of audiences to which the promotion is limited. An empty list implies no restrictions.
Show Source
Nested Schema : cardIINRanges
Type:
array
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
Show Source
Nested Schema : closenessQualifiers
Type:
array
Array of message sets that apply to a specific criteria for displaying a partially-qualified upsell message to a shopper. Partial qualification is based on the threshold value specified in templateValues.See online documentation for more details.
Show Source
Nested Schema : excludedPromotions
Type:
array
List of promotions to be excluded from the current promotion. Item promotions can exclude promotions of type: item, order, shipping. Order promotions can exclude promotion of type order and shipping. Shipping promotions can only exclude another shipping promotions.
Show Source
Nested Schema : parentFolder
Type:
object
Map of promotion folder's repository ID key and value. In order to remove the folder assignment, set parentFolder to null e.g. "parentFolder": null
Show Source
-
repositoryId(optional):
string
Existing promotion folder's repository ID
Nested Schema : qualifiedMessages
Type:
array
Promotion upsell messages to display when the shopper has qualified for the promotion.
Show Source
Nested Schema : shippingMethods
Type:
array
Shipping Methods for which the promotion should be applied
Show Source
Nested Schema : sites
Type:
array
This will limit the promotion to being applicable only to the 1+ specified sites. An empty array means the promotion applies to all sites.
Show Source
Nested Schema : templateValues
Type:
object
Specifies the template values that are used as part of the promotion to control its behavior
Show Source
-
condition_psc_value(optional):
object condition_psc_value
The condition product set criteria value
-
discount_type_value(optional):
string
The discount type
-
discount_value(optional):
string
The discount value
-
discountStructure(optional):
object discountStructure
The discount structure
-
gwpItem(optional):
object gwpItem
The gift with promotion configuration details
-
no_of_items_to_buy(optional):
string
The number of items to buy
-
no_of_items_to_discount(optional):
string
The number of items to discount
-
offer_psc_value(optional):
object offer_psc_value
The offer product set criteria values
-
optional_offer_psc_value(optional):
object optional_offer_psc_value
The offer product set criteria values
-
PSC_value(optional):
object PSC_value
The product set criteria values
-
sort_by(optional):
string
The sort by condition
-
sort_order(optional):
string
The sort order
-
spend_value(optional):
string
The spend value
Nested Schema : unqualifiedMessages
Type:
array
Promotion upsell messages to display when the shopper has not yet qualified for the promotion.
Show Source
Nested Schema : items
Type:
Show Source
object
-
repositoryId:
string
The ID of an audience associated with the promotion.
Nested Schema : items
Type:
Show Source
object
-
closenessMessages(optional):
array closenessMessages
Promotion upsell messages to display when the shopper has partially-qualified for the promotion.
-
repositoryId(optional):
string
The closeness qualifier's ID. If provided, this will update an existing closeness qualifier; otherwise a new closeness qualifier will be created. If a closeness qualifier already exists, it will be deleted and replaced.
Nested Schema : closenessMessages
Type:
array
Promotion upsell messages to display when the shopper has partially-qualified for the promotion.
Show Source
Nested Schema : items
Type:
Show Source
object
-
message(optional):
string
Localizable text for the upsell message.
-
repositoryId(optional):
string
The message's ID. If provided, this will update an existing message; otherwise a new message will be created. If a message already exists, it will be deleted and replaced.
-
tags(optional):
array tags
Array of message tags to use in associating where to display the message on the storefront.
Nested Schema : items
Type:
Show Source
object
-
message(optional):
string
Localizable text for the upsell message.
-
repositoryId(optional):
string
The message's ID. If provided, this will update an existing message; otherwise a new message will be created. If a message already exists, it will be deleted and replaced.
-
tags(optional):
array tags
Array of message tags to use in associating where to display the message on the storefront.
Nested Schema : items
Type:
Show Source
object
-
repositoryId:
string
The ID of a site associated with the promotion.
Nested Schema : condition_psc_value
Type:
object
The condition product set criteria value
Show Source
-
excludedCategories(optional):
array excludedCategories
The excluded categories
-
excludedProducts(optional):
array excludedProducts
The excluded products
-
excludedSkus(optional):
array excludedSkus
The excluded SKU IDs
-
includedCategories(optional):
array includedCategories
The included categories
-
includedProducts(optional):
array includedProducts
The included products
-
includedSkus(optional):
array includedSkus
The included SKU IDs
Nested Schema : discountStructure
Type:
object
The discount structure
Show Source
-
discount_details(optional):
array discount_details
The discount details
-
discount_type_value(optional):
string
The discount type value
Nested Schema : gwpItem
Type:
object
The gift with promotion configuration details
Show Source
-
autoRemove(optional):
boolean
Whether to remove item from cart when cart no longer meets buy condition
-
giftId(optional):
string
The product id of the gift item
-
giftType(optional):
string
The gift item type
Nested Schema : offer_psc_value
Type:
object
The offer product set criteria values
Show Source
-
excludedCategories(optional):
array excludedCategories
The excluded categories
-
excludedProducts(optional):
array excludedProducts
The excluded products
-
excludedSkus(optional):
array excludedSkus
The excluded SKU IDs
-
includedCategories(optional):
array includedCategories
The included categories
-
includedProducts(optional):
array includedProducts
The included products
-
includedSkus(optional):
array includedSkus
The included SKU IDs
Nested Schema : optional_offer_psc_value
Type:
object
The offer product set criteria values
Show Source
-
excludedCategories(optional):
array excludedCategories
The excluded categories
-
excludedProducts(optional):
array excludedProducts
The excluded products
-
excludedSkus(optional):
array excludedSkus
The excluded SKU IDs
-
includedCategories(optional):
array includedCategories
The included categories
-
includedProducts(optional):
array includedProducts
The included products
-
includedSkus(optional):
array includedSkus
The included SKU IDs
-
sameAsCondition(optional):
boolean
Items to include and exclude for offer are the same as items in buy condition
Nested Schema : PSC_value
Type:
object
The product set criteria values
Show Source
-
excludedCategories(optional):
array excludedCategories
The excluded categories
-
excludedProducts(optional):
array excludedProducts
The excluded products
-
excludedSkus(optional):
array excludedSkus
The excluded SKU Ids
-
includedCategories(optional):
array includedCategories
The included categories
-
includedProducts(optional):
array includedProducts
The included products
-
includedSkus(optional):
array includedSkus
The included SKU IDs
Nested Schema : items
Type:
Show Source
object
-
discount_value(optional):
string
The discount value
-
spend_value(optional):
string
The spend value
Nested Schema : items
Type:
Show Source
object
-
message(optional):
string
Localizable text for the upsell message.
-
repositoryId(optional):
string
The message's ID. If provided, this will update an existing message; otherwise a new message will be created. If a message already exists, it will be deleted and replaced.
-
tags(optional):
array tags
Array of message tags to use in associating where to display the message on the storefront.
Response
Supported Media Types
- application/json
200 Response
Following model is returned when operation succeeds.
Root Schema : updatePromotion_response
Type:
Show Source
object
-
cardIINRanges(optional):
array cardIINRanges
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
-
displayName(optional):
string
The display name of the promotion.
-
enabled(optional):
boolean
Whether or not the promotion is currently enabled.
-
endDate(optional):
string
When this promotion ceases to be active
-
id(optional):
string
The Promotion id.
-
lastModified(optional):
string
When promotion was last modified
-
maxUsesPerOrder(optional):
integer
Number of times a promotion can be applied to an order, -1 indicates that the same promotion can be applied unlimited number of times
-
parentFolder(optional):
object parentFolder
Parent Folder object of the current promotion.
-
repositoryId(optional):
string
The Promotion id.
-
sites(optional):
array sites
This will limit the promotion to being applicable only to the 1+ specified sites. An empty array means the promotion applies to all sites.
-
stackingRule(optional):
object stackingRule
Represents a rule to determine a group of promotions that can be used together.
-
startDate(optional):
string
When this promotion becomes active
-
type(optional):
integer
Integer representation of the promotion type (shipping, item, order).
Nested Schema : cardIINRanges
Type:
array
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
Show Source
Nested Schema : parentFolder
Type:
object
Parent Folder object of the current promotion.
Show Source
-
repositoryId(optional):
string
Existing promotion folder's repository ID
Nested Schema : sites
Type:
array
This will limit the promotion to being applicable only to the 1+ specified sites. An empty array means the promotion applies to all sites.
Show Source
Nested Schema : stackingRule
Type:
object
Represents a rule to determine a group of promotions that can be used together.
Show Source
-
displayName(optional):
string
The name of the rule.
-
id(optional):
string
The stacking rule id.
-
maxPromotions(optional):
string
The maximum number of promotions that can be applied to an order based on this rule.
-
repositoryId(optional):
string
The stacking rule id
Nested Schema : items
Type:
Show Source
object
-
repositoryId(optional):
string
The ID of a site associated with the promotion.
Example Response (application/json)
{
"parentFolder":{
"repositoryId":"promoFolder100001"
},
"displayName":"Hubbard Chair Tiered Price Break",
"repositoryId":"promo20009",
"id":"promo20009",
"type":0,
"enabled":false,
"cardIINRanges":[
"456789",
"9878",
"987634-987648"
]
}
Default Response
The error response.
The following are the internal error codes thrown by this API when the request processing fails in Oracle Commerce Cloud:
|Error Code|Description|
|------------------|------------------|
|21038|Invalid data error. The exact error message will vary based on the property.|
|21247|Invalid format for parentFolder property|
|21244|No item found for the following type and ID: promotionFolder, invalidId|
|21176|incompatiblePromotionId : Promotion can not be linked to itself with included/excluded Promotions property : itemPromotion.|
|21174|incompatiblePromotionId : Promotion type item can not be included/excluded with the given promotion type : {item/order or discount}.|
|21171|No item found for the following type and ID: promotion, invalidPromotion.|
Root Schema : errorModel
Type:
Show Source
object
-
devMessage(optional):
string
An optional non-localized message containing technical information for developers
-
errorCode(optional):
string
The numerical code identifying the error
-
errors(optional):
array errors
An optional list of errors if multiple errors were encountered
-
message(optional):
string
The localized message describing the error
-
moreInfo(optional):
string
An optional non-localized message with more information
-
o:errorPath(optional):
string
An optional machine readable description of where the error occurred
-
status(optional):
string
The HTTP status code
-
type(optional):
string
The URI to the HTTP state code definition
Nested Schema : errors
Type:
array
An optional list of errors if multiple errors were encountered
Show Source
Nested Schema : items
Type:
Show Source
object
-
devMessage(optional):
string
An optional non-localized message containing technical information for developers
-
errorCode(optional):
string
The numerical code identifying the error
-
message(optional):
string
The localized message describing the error
-
moreInfo(optional):
string
An optional non-localized message with more information
-
o:errorPath(optional):
string
An optional machine readable description of where the error occurred
-
status(optional):
string
The HTTP status code