createPromotion

post

/ccadmin/v1/promotions

Create Promotion. Create a new promotion. **Requires the x-ccasset-language header so translated content can be set for a specific language.**

Request

Supported Media Types
  • application/json
Header Parameters
X-CCAsset-Language
Type: string
Required: true
The asset language of the request
Body Parameter
Root Schema : createPromotion_request
Nested Schema : audiences
Type: array
List of audiences to which the promotion is limited. An empty list implies no restrictions.
Nested Schema : cardIINRanges
Type: array
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
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.
Nested Schema : parentFolder
Type: object
Map of promotion folder's repository ID key and value. In order to have no folder assignment, set parentFolder to null e.g. "parentFolder": null or skip the property completely.
Nested Schema : priceListGroups
Type: array
The price List Groups
Nested Schema : shippingMethods
Type: array
Shipping Methods for which the promotion should be applied
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.
Nested Schema : templateValues
Type: object
Specifies the template values that are used as part of the promotion to control its behavior
Nested Schema : items
Type: object
Nested Schema : items
Type: object
Nested Schema : items
Type: object
Nested Schema : condition_psc_value
Type: object
The condition product set criteria value
Nested Schema : discountStructure
Type: object
The discount structure
Nested Schema : gwpItem
Type: object
The gift with promotion configuration details
Nested Schema : offer_psc_value
Type: object
The offer product set criteria values
Nested Schema : optional_offer_psc_value
Type: object
The offer product set criteria values
Nested Schema : PSC_value
Type: object
The product set criteria values
Nested Schema : excludedCategories
Type: array
The excluded categories
Nested Schema : excludedProducts
Type: array
The excluded products
Nested Schema : includedCategories
Type: array
The included categories
Nested Schema : includedProducts
Type: array
The included products
Nested Schema : discount_details
Type: array
The discount details
Nested Schema : items
Type: object
Nested Schema : excludedCategories
Type: array
The excluded categories
Nested Schema : excludedProducts
Type: array
The excluded products
Nested Schema : includedCategories
Type: array
The included categories
Nested Schema : includedProducts
Type: array
The included products
Nested Schema : excludedCategories
Type: array
The excluded categories
Nested Schema : excludedProducts
Type: array
The excluded products
Nested Schema : includedCategories
Type: array
The included categories
Nested Schema : includedProducts
Type: array
The included products
Nested Schema : excludedCategories
Type: array
The excluded categories
Nested Schema : excludedProducts
Type: array
The excluded products
Nested Schema : includedCategories
Type: array
The included categories
Nested Schema : includedProducts
Type: array
The included products

Response

Supported Media Types
  • application/json
200 Response
Following model is returned when operation succeeds.
Body
Root Schema : createPromotion_response
Nested Schema : cardIINRanges
Type: array
List of issuer identification numbers including wildcards and ranges for which the promotion should be applied.
Nested Schema : parentFolder
Type: object
Map of promotion folder's repository ID key and value.
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.
Nested Schema : stackingRule
Type: object
Represents a rule to determine a group of promotions that can be used together.
Nested Schema : items
Type: object
Example application/json

{
    "parentFolder":null,
    "displayName":"10% Off Orders Over $100 ",
    "id":"promo20014",
    "type":9,
    "enabled":true,
    "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| |------------------|------------------| |21247|Invalid format for parentFolder property| |21244|No item found for the following type and ID: promotionFolder,invalidId| |21110|Invalid data error. The exact error message will vary based on the property.| |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.|
Body
Root Schema : errorModel
Type: object
Nested Schema : errors
Type: array
An optional list of errors if multiple errors were encountered
Nested Schema : items
Type: object

Examples

Sample Request:

{
  "endDate": "2014-04-29T19:30:00.000-04:00",
  "displayName": "10% Off Orders Over $100 ",
  "templateValues": {
    "spend_value": "100",
    "discount_value": "10",
    "discount_type_value": "percentOff"
  },
  "description": "Spend $100 today and get 10% off your order!",
  "sites": [
    {"repositoryId": "funSite"},
    {"repositoryId": "anotherFunSite"}
  ],
  "priority": 1,
  "templatePath": "order",
  "enabled": true,
  "cardIINRanges": [
    "456789",
    "9878",
    "987634-987648"
  ],
  "excludedPromotions": [
    {"repositoryId": "explicitItemFixedDiscount"},
    {"repositoryId": "bogoPromotion"}
  ],
  "parentFolder": {"repositoryId": "promoFolder100001"},
  "templateName": "spendYGetOrderDiscount",
  "audiences": [
    {"repositoryId": "audienceId1"},
    {"repositoryId": "audienceId2"}
  ],
  "startDate": "2014-04-25T17:30:00.000-04:00",
  "shippingMethods": [
    "priorityShippingMethod",
    "groundShippingMethod"
  ]
}

Sample Response Payload returned by endpoint:

{
  "parentFolder": null,
  "displayName": "10% Off Orders Over $100 ",
  "id": "promo20014",
  "type": 9,
  "enabled": true,
  "cardIINRanges": [
    "456789",
    "9878",
    "987634-987648"
  ]
}