Management API (v1)

The Norce Management API lets you manage configurations and metadata on a client.

Download OpenAPI description
Languages
Servers

https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/

Schemas

Settings ApplicationCountry

Operations

Settings ApplicationCulture

Operations

Settings ApplicationCurrency

Operations

Settings ApplicationSalesArea

Operations

Settings Application

Operations

Category

Operations

CategoryParametric

Operations

Settings ClientAssortment

Operations

Settings ClientCurrency

Operations

Settings ClientSalesArea

Operations

Customer FlagGroup

Operations

Customer Flag

Operations

Customer InfoType

Operations

Product Family

Operations

Product File

Operations

Product Manufacturer

Operations

Parametric Group

Operations

Parametric List

Operations

Parametric Multiple

Operations

Parametric

Operations

PriceList Population

Operations

PriceList Pricing

Operations

PriceList

Operations

PriceList SupplierPriceList

Operations

PriceList Warehouse

Operations

Product FlagGroup

Operations

Product Flag

Operations

Product InfoType

Operations

Product Type

Operations

Promotion

Operations

Get a promotion by id

Request

Get a specific promotion by its internal id

Path
idinteger(int32)required

Promotion id

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

curl -i -X GET \
  'https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion/{id}' \
  -H 'account-id: 0' \
  -H 'application-id: 0'

Responses

Returns the Promotion

Bodyapplication/json
Idinteger(int32)

The promotion identifier

Namestring or null[ 0 .. 255 ] characters

The name of the promotion in the current culture

DefaultNamestring or null[ 0 .. 255 ] characters

The default name of the promotion used as fallback when no culture-specific name is available

IsNameInheritedboolean

Indicates whether the name is inherited from the default culture

SubHeaderstring or null[ 0 .. 255 ] characters

The sub header of the promotion in the current culture

DefaultSubHeaderstring or null[ 0 .. 255 ] characters

The default sub header of the promotion used as fallback when no culture-specific sub header is available

IsSubHeaderInheritedboolean

Indicates whether the sub header is inherited from the default culture

SubDescriptionstring or null

The sub description of the promotion in the current culture

DefaultSubDescriptionstring or null

The default sub description of the promotion used as fallback when no culture-specific sub description is available

IsSubDescriptionInheritedboolean

Indicates whether the sub description is inherited from the default culture

DescriptionHeaderstring or null[ 0 .. 255 ] characters

The description header of the promotion in the current culture

DefaultDescriptionHeaderstring or null[ 0 .. 255 ] characters

The default description header of the promotion used as fallback when no culture-specific description header is available

IsDescriptionHeaderInheritedboolean

Indicates whether the description header is inherited from the default culture

Descriptionstring or null

The description of the promotion in the current culture

DefaultDescriptionstring or null

The default description of the promotion used as fallback when no culture-specific description is available

IsDescriptionInheritedboolean

Indicates whether the description is inherited from the default culture

ImageKeystring or null(guid)

The unique identifier for the promotion image

ImageUrlstring or null

The URL of the promotion image, deprecated, use ImageKey instead.

Codestring or null[ 0 .. 50 ] characters

The unique code identifying the promotion

ExclusivityTypestring or null

Exclusive promotion type: NotExclusive, Exclusive, IgnoreExclusivity. Default is NotExclusive

StartDatestring or null(date-time)

The start date when the promotion becomes active, null means active immediately, if status is Active and start date is in the future the promotion is considered "Coming"

EndDatestring or null(date-time)

The end date when the promotion expires, null means no end date, if status is Active and end date is in the past the promotion is considered "Ended"

CountLeftinteger or null(int32)

The number of usages left for this promotion, if AllowedUsageCount is set

AllowedUsageCountinteger or null(int32)

The maximum number of times this promotion can be used

UsageCountinteger or null(int32)

The total number of times this promotion has been used

UniqueUserUsageCountinteger or null(int32)

The number of unique users who have used this promotion

UniqueDiscountCodeCountinteger or null(int32)

The number of unique discount codes associated with this promotion

UniqueDiscountCodeUsedCountinteger or null(int32)

The number of unique discount codes that have been used for this promotion

TotalOrdernumber or null(decimal)

The total order amount for this promotion

TotalDiscountnumber or null(decimal)

The total discount amount given by this promotion

DiscountPercentagenumber or null(decimal)

The discount percentage applied by this promotion

MarginPercentagenumber or null(decimal)

The margin percentage for this promotion

IsStackableboolean or null

Indicates whether this promotion can be stacked with itself. If true, multiples of the same promotion can be applied, like 3 for 2 deals (6 for 4, etc.). If false, the promotion can only be applied once per order.

IsProductReqboolean

Indicates whether this promotions products can be listed from API calls. If true, products can be listed in a front-end application when building a promotion bundle configuration UI. like choose products to buy with this promotion.

ExcludeFromPriceCalculationboolean

Indicates whether this promotion should be excluded from basket total price, so that other promotions are not validated based on the discounted price from this promotion.

Statusstring or null

Promotion status: Inactive, Active, Draft. Default is Inactive

CurrencyCodestring or null

The currency code for this promotion

StoppedDatestring or null(date-time)

The date and time when the promotion was stopped

StoppedByinteger or null(int32)

The identifier of the user who stopped this promotion

StoppedByNamestring or null

The name of the user who stopped this promotion

Createdstring(date-time)

The date and time when the promotion was created

CreatedByNamestring or null

The name of the user who created this promotion

Changedstring or null

The date and time when the promotion was last changed

ChangedBystring or null

Fullname or Systemname of the user who last changed the promotion

CulturesArray of objects(PromotionCultureModel)

The list of culture-specific translations for this promotion

RequirementsArray of objects(PromotionRequirementSettingModel)

The list of requirements that must be met for this promotion to be applied

EffectsArray of objects(PromotionEffectSettingModel)

The list of effects that will be applied when this promotion is triggered

Response
application/json
{ "Id": 0, "Name": "string", "DefaultName": "string", "IsNameInherited": true, "SubHeader": "string", "DefaultSubHeader": "string", "IsSubHeaderInherited": true, "SubDescription": "string", "DefaultSubDescription": "string", "IsSubDescriptionInherited": true, "DescriptionHeader": "string", "DefaultDescriptionHeader": "string", "IsDescriptionHeaderInherited": true, "Description": "string", "DefaultDescription": "string", "IsDescriptionInherited": true, "ImageKey": "string", "ImageUrl": "string", "Code": "string", "ExclusivityType": "string", "StartDate": "2019-08-24T14:15:22Z", "EndDate": "2019-08-24T14:15:22Z", "CountLeft": 0, "AllowedUsageCount": 0, "UsageCount": 0, "UniqueUserUsageCount": 0, "UniqueDiscountCodeCount": 0, "UniqueDiscountCodeUsedCount": 0, "TotalOrder": 0, "TotalDiscount": 0, "DiscountPercentage": 0, "MarginPercentage": 0, "IsStackable": true, "IsProductReq": true, "ExcludeFromPriceCalculation": true, "Status": "string", "CurrencyCode": "string", "StoppedDate": "2019-08-24T14:15:22Z", "StoppedBy": 0, "StoppedByName": "string", "Created": "2019-08-24T14:15:22Z", "CreatedByName": "string", "Changed": "string", "ChangedBy": "string", "Cultures": [ {} ], "Requirements": [ {} ], "Effects": [ {} ] }

Update a promotion

Request

Update an existing promotion

Path
idinteger(int32)required

Promotion id

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

Bodyapplication/jsonrequired

Promotion to update

Idinteger(int32)

The promotion identifier

Namestring or null[ 0 .. 255 ] characters

The name of the promotion in the current culture

DefaultNamestring or null[ 0 .. 255 ] characters

The default name of the promotion used as fallback when no culture-specific name is available

IsNameInheritedboolean

Indicates whether the name is inherited from the default culture

SubHeaderstring or null[ 0 .. 255 ] characters

The sub header of the promotion in the current culture

DefaultSubHeaderstring or null[ 0 .. 255 ] characters

The default sub header of the promotion used as fallback when no culture-specific sub header is available

IsSubHeaderInheritedboolean

Indicates whether the sub header is inherited from the default culture

SubDescriptionstring or null

The sub description of the promotion in the current culture

DefaultSubDescriptionstring or null

The default sub description of the promotion used as fallback when no culture-specific sub description is available

IsSubDescriptionInheritedboolean

Indicates whether the sub description is inherited from the default culture

DescriptionHeaderstring or null[ 0 .. 255 ] characters

The description header of the promotion in the current culture

DefaultDescriptionHeaderstring or null[ 0 .. 255 ] characters

The default description header of the promotion used as fallback when no culture-specific description header is available

IsDescriptionHeaderInheritedboolean

Indicates whether the description header is inherited from the default culture

Descriptionstring or null

The description of the promotion in the current culture

DefaultDescriptionstring or null

The default description of the promotion used as fallback when no culture-specific description is available

IsDescriptionInheritedboolean

Indicates whether the description is inherited from the default culture

ImageKeystring or null(guid)

The unique identifier for the promotion image

ImageUrlstring or null

The URL of the promotion image, deprecated, use ImageKey instead.

Codestring or null[ 0 .. 50 ] characters

The unique code identifying the promotion

ExclusivityTypestring or null

Exclusive promotion type: NotExclusive, Exclusive, IgnoreExclusivity. Default is NotExclusive

StartDatestring or null(date-time)

The start date when the promotion becomes active, null means active immediately, if status is Active and start date is in the future the promotion is considered "Coming"

EndDatestring or null(date-time)

The end date when the promotion expires, null means no end date, if status is Active and end date is in the past the promotion is considered "Ended"

CountLeftinteger or null(int32)

The number of usages left for this promotion, if AllowedUsageCount is set

AllowedUsageCountinteger or null(int32)

The maximum number of times this promotion can be used

UsageCountinteger or null(int32)

The total number of times this promotion has been used

UniqueUserUsageCountinteger or null(int32)

The number of unique users who have used this promotion

UniqueDiscountCodeCountinteger or null(int32)

The number of unique discount codes associated with this promotion

UniqueDiscountCodeUsedCountinteger or null(int32)

The number of unique discount codes that have been used for this promotion

TotalOrdernumber or null(decimal)

The total order amount for this promotion

TotalDiscountnumber or null(decimal)

The total discount amount given by this promotion

DiscountPercentagenumber or null(decimal)

The discount percentage applied by this promotion

MarginPercentagenumber or null(decimal)

The margin percentage for this promotion

IsStackableboolean or null

Indicates whether this promotion can be stacked with itself. If true, multiples of the same promotion can be applied, like 3 for 2 deals (6 for 4, etc.). If false, the promotion can only be applied once per order.

IsProductReqboolean

Indicates whether this promotions products can be listed from API calls. If true, products can be listed in a front-end application when building a promotion bundle configuration UI. like choose products to buy with this promotion.

ExcludeFromPriceCalculationboolean

Indicates whether this promotion should be excluded from basket total price, so that other promotions are not validated based on the discounted price from this promotion.

Statusstring or null

Promotion status: Inactive, Active, Draft. Default is Inactive

CurrencyCodestring or null

The currency code for this promotion

StoppedDatestring or null(date-time)

The date and time when the promotion was stopped

StoppedByinteger or null(int32)

The identifier of the user who stopped this promotion

StoppedByNamestring or null

The name of the user who stopped this promotion

Createdstring(date-time)

The date and time when the promotion was created

CreatedByNamestring or null

The name of the user who created this promotion

Changedstring or null

The date and time when the promotion was last changed

ChangedBystring or null

Fullname or Systemname of the user who last changed the promotion

CulturesArray of objects(PromotionCultureModel)

The list of culture-specific translations for this promotion

RequirementsArray of objects(PromotionRequirementSettingModel)

The list of requirements that must be met for this promotion to be applied

EffectsArray of objects(PromotionEffectSettingModel)

The list of effects that will be applied when this promotion is triggered

curl -i -X PUT \
  'https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion/{id}' \
  -H 'Content-Type: application/json' \
  -H 'account-id: 0' \
  -H 'application-id: 0' \
  -d '{
    "Id": 0,
    "Name": "string",
    "DefaultName": "string",
    "IsNameInherited": true,
    "SubHeader": "string",
    "DefaultSubHeader": "string",
    "IsSubHeaderInherited": true,
    "SubDescription": "string",
    "DefaultSubDescription": "string",
    "IsSubDescriptionInherited": true,
    "DescriptionHeader": "string",
    "DefaultDescriptionHeader": "string",
    "IsDescriptionHeaderInherited": true,
    "Description": "string",
    "DefaultDescription": "string",
    "IsDescriptionInherited": true,
    "ImageKey": "string",
    "ImageUrl": "string",
    "Code": "string",
    "ExclusivityType": "string",
    "StartDate": "2019-08-24T14:15:22Z",
    "EndDate": "2019-08-24T14:15:22Z",
    "CountLeft": 0,
    "AllowedUsageCount": 0,
    "UsageCount": 0,
    "UniqueUserUsageCount": 0,
    "UniqueDiscountCodeCount": 0,
    "UniqueDiscountCodeUsedCount": 0,
    "TotalOrder": 0,
    "TotalDiscount": 0,
    "DiscountPercentage": 0,
    "MarginPercentage": 0,
    "IsStackable": true,
    "IsProductReq": true,
    "ExcludeFromPriceCalculation": true,
    "Status": "string",
    "CurrencyCode": "string",
    "StoppedDate": "2019-08-24T14:15:22Z",
    "StoppedBy": 0,
    "StoppedByName": "string",
    "Created": "2019-08-24T14:15:22Z",
    "CreatedByName": "string",
    "Changed": "string",
    "ChangedBy": "string",
    "Cultures": [
      {
        "CultureCode": "string",
        "Name": "string",
        "IsNameInherited": true,
        "SubHeader": "string",
        "IsSubHeaderInherited": true,
        "SubDescription": "string",
        "IsSubDescriptionInherited": true,
        "DescriptionHeader": "string",
        "IsDescriptionHeaderInherited": true,
        "Description": "string",
        "IsDescriptionInherited": true,
        "IsTranslated": true
      }
    ],
    "Requirements": [
      {
        "Id": 0,
        "RequirementType": "string",
        "DiscountCode": "string",
        "ValueType": "string",
        "OrderSum": 0,
        "OrderSumMax": 0,
        "IsIncVat": true,
        "ProductsIncluded": "string",
        "CustomerFlagId": 0,
        "CustomerFlagName": "string",
        "IsCustomerFlagIncluded": true,
        "SortOrder": 0,
        "ProductList": [
          {
            "Id": 0,
            "ManufacturerId": 0,
            "ManufacturerCode": "string",
            "ManufacturerName": "string",
            "CategoryId": 0,
            "CategoryCode": "string",
            "CategoryName": "string",
            "FlagId": 0,
            "FlagCode": "string",
            "FlagName": "string",
            "IsFlagInclusive": true,
            "PriceListId": 0,
            "PriceListCode": "string",
            "PriceListName": "string",
            "ProductTypeId": 0,
            "ProductTypeName": "string",
            "ProductId": 0,
            "ProductHasVariants": true,
            "ProductName": "string",
            "VariantProductId": 0,
            "VariantProductName": "string",
            "PartNo": "string",
            "Qty": 0,
            "Changed": "string",
            "ChangedBy": "string"
          }
        ],
        "Changed": "string",
        "ChangedBy": "string",
        "MatchByEachPartNo": true,
        "GenericQty": 0,
        "GenericQtyMax": 0
      }
    ],
    "Effects": [
      {
        "Id": 0,
        "EffectType": "string",
        "IsDiscount": true,
        "IsFixedPrice": true,
        "Value": 0,
        "IsIncVat": true,
        "IgnoreNonDiscountable": true,
        "DiscountMostExpensiveItems": true,
        "SortOrder": 0,
        "UseRequirementProducts": true,
        "GenericQty": 0,
        "ProductList": [
          {
            "Id": 0,
            "ManufacturerId": 0,
            "ManufacturerCode": "string",
            "ManufacturerName": "string",
            "CategoryId": 0,
            "CategoryCode": "string",
            "CategoryName": "string",
            "FlagId": 0,
            "FlagCode": "string",
            "FlagName": "string",
            "IsFlagInclusive": true,
            "PriceListId": 0,
            "PriceListCode": "string",
            "PriceListName": "string",
            "ProductTypeId": 0,
            "ProductTypeName": "string",
            "ProductId": 0,
            "ProductHasVariants": true,
            "ProductName": "string",
            "VariantProductId": 0,
            "VariantProductName": "string",
            "PartNo": "string",
            "Qty": 0,
            "IsDiscount": true,
            "IsFixedPrice": true,
            "Value": 0,
            "IsIncVat": true,
            "Changed": "string",
            "ChangedBy": "string"
          }
        ],
        "Changed": "string",
        "ChangedBy": "string"
      }
    ]
  }'

Responses

If the promotion was successfully updated

Bodyapplication/json
integer(int32)
Response
application/json
0

List promotions

Request

Get a list of all promotions on the client without requirements and effects

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

curl -i -X GET \
  https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion \
  -H 'account-id: 0' \
  -H 'application-id: 0'

Responses

Returns the list of promotions, if any exists

Bodyapplication/jsonArray [
Idinteger(int32)

The promotion identifier

Namestring or null[ 0 .. 255 ] characters

The name of the promotion in the current culture

DefaultNamestring or null[ 0 .. 255 ] characters

The default name of the promotion used as fallback when no culture-specific name is available

IsNameInheritedboolean

Indicates whether the name is inherited from the default culture

SubHeaderstring or null[ 0 .. 255 ] characters

The sub header of the promotion in the current culture

DefaultSubHeaderstring or null[ 0 .. 255 ] characters

The default sub header of the promotion used as fallback when no culture-specific sub header is available

IsSubHeaderInheritedboolean

Indicates whether the sub header is inherited from the default culture

SubDescriptionstring or null

The sub description of the promotion in the current culture

DefaultSubDescriptionstring or null

The default sub description of the promotion used as fallback when no culture-specific sub description is available

IsSubDescriptionInheritedboolean

Indicates whether the sub description is inherited from the default culture

DescriptionHeaderstring or null[ 0 .. 255 ] characters

The description header of the promotion in the current culture

DefaultDescriptionHeaderstring or null[ 0 .. 255 ] characters

The default description header of the promotion used as fallback when no culture-specific description header is available

IsDescriptionHeaderInheritedboolean

Indicates whether the description header is inherited from the default culture

Descriptionstring or null

The description of the promotion in the current culture

DefaultDescriptionstring or null

The default description of the promotion used as fallback when no culture-specific description is available

IsDescriptionInheritedboolean

Indicates whether the description is inherited from the default culture

ImageKeystring or null(guid)

The unique identifier for the promotion image

ImageUrlstring or null

The URL of the promotion image, deprecated, use ImageKey instead.

Codestring or null[ 0 .. 50 ] characters

The unique code identifying the promotion

ExclusivityTypestring or null

Exclusive promotion type: NotExclusive, Exclusive, IgnoreExclusivity. Default is NotExclusive

StartDatestring or null(date-time)

The start date when the promotion becomes active, null means active immediately, if status is Active and start date is in the future the promotion is considered "Coming"

EndDatestring or null(date-time)

The end date when the promotion expires, null means no end date, if status is Active and end date is in the past the promotion is considered "Ended"

CountLeftinteger or null(int32)

The number of usages left for this promotion, if AllowedUsageCount is set

AllowedUsageCountinteger or null(int32)

The maximum number of times this promotion can be used

UsageCountinteger or null(int32)

The total number of times this promotion has been used

UniqueUserUsageCountinteger or null(int32)

The number of unique users who have used this promotion

UniqueDiscountCodeCountinteger or null(int32)

The number of unique discount codes associated with this promotion

UniqueDiscountCodeUsedCountinteger or null(int32)

The number of unique discount codes that have been used for this promotion

TotalOrdernumber or null(decimal)

The total order amount for this promotion

TotalDiscountnumber or null(decimal)

The total discount amount given by this promotion

DiscountPercentagenumber or null(decimal)

The discount percentage applied by this promotion

MarginPercentagenumber or null(decimal)

The margin percentage for this promotion

IsStackableboolean or null

Indicates whether this promotion can be stacked with itself. If true, multiples of the same promotion can be applied, like 3 for 2 deals (6 for 4, etc.). If false, the promotion can only be applied once per order.

IsProductReqboolean

Indicates whether this promotions products can be listed from API calls. If true, products can be listed in a front-end application when building a promotion bundle configuration UI. like choose products to buy with this promotion.

ExcludeFromPriceCalculationboolean

Indicates whether this promotion should be excluded from basket total price, so that other promotions are not validated based on the discounted price from this promotion.

Statusstring or null

Promotion status: Inactive, Active, Draft. Default is Inactive

CurrencyCodestring or null

The currency code for this promotion

StoppedDatestring or null(date-time)

The date and time when the promotion was stopped

StoppedByinteger or null(int32)

The identifier of the user who stopped this promotion

StoppedByNamestring or null

The name of the user who stopped this promotion

Createdstring(date-time)

The date and time when the promotion was created

CreatedByNamestring or null

The name of the user who created this promotion

Changedstring or null

The date and time when the promotion was last changed

ChangedBystring or null

Fullname or Systemname of the user who last changed the promotion

CulturesArray of objects(PromotionCultureModel)

The list of culture-specific translations for this promotion

]
Response
application/json
[ { "Id": 0, "Name": "string", "DefaultName": "string", "IsNameInherited": true, "SubHeader": "string", "DefaultSubHeader": "string", "IsSubHeaderInherited": true, "SubDescription": "string", "DefaultSubDescription": "string", "IsSubDescriptionInherited": true, "DescriptionHeader": "string", "DefaultDescriptionHeader": "string", "IsDescriptionHeaderInherited": true, "Description": "string", "DefaultDescription": "string", "IsDescriptionInherited": true, "ImageKey": "string", "ImageUrl": "string", "Code": "string", "ExclusivityType": "string", "StartDate": "2019-08-24T14:15:22Z", "EndDate": "2019-08-24T14:15:22Z", "CountLeft": 0, "AllowedUsageCount": 0, "UsageCount": 0, "UniqueUserUsageCount": 0, "UniqueDiscountCodeCount": 0, "UniqueDiscountCodeUsedCount": 0, "TotalOrder": 0, "TotalDiscount": 0, "DiscountPercentage": 0, "MarginPercentage": 0, "IsStackable": true, "IsProductReq": true, "ExcludeFromPriceCalculation": true, "Status": "string", "CurrencyCode": "string", "StoppedDate": "2019-08-24T14:15:22Z", "StoppedBy": 0, "StoppedByName": "string", "Created": "2019-08-24T14:15:22Z", "CreatedByName": "string", "Changed": "string", "ChangedBy": "string", "Cultures": [] } ]

Add a promotion

Request

Add a new promotion to the client

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

Bodyapplication/jsonrequired

Promotion to insert

Idinteger(int32)

The promotion identifier

Namestring or null[ 0 .. 255 ] characters

The name of the promotion in the current culture

DefaultNamestring or null[ 0 .. 255 ] characters

The default name of the promotion used as fallback when no culture-specific name is available

IsNameInheritedboolean

Indicates whether the name is inherited from the default culture

SubHeaderstring or null[ 0 .. 255 ] characters

The sub header of the promotion in the current culture

DefaultSubHeaderstring or null[ 0 .. 255 ] characters

The default sub header of the promotion used as fallback when no culture-specific sub header is available

IsSubHeaderInheritedboolean

Indicates whether the sub header is inherited from the default culture

SubDescriptionstring or null

The sub description of the promotion in the current culture

DefaultSubDescriptionstring or null

The default sub description of the promotion used as fallback when no culture-specific sub description is available

IsSubDescriptionInheritedboolean

Indicates whether the sub description is inherited from the default culture

DescriptionHeaderstring or null[ 0 .. 255 ] characters

The description header of the promotion in the current culture

DefaultDescriptionHeaderstring or null[ 0 .. 255 ] characters

The default description header of the promotion used as fallback when no culture-specific description header is available

IsDescriptionHeaderInheritedboolean

Indicates whether the description header is inherited from the default culture

Descriptionstring or null

The description of the promotion in the current culture

DefaultDescriptionstring or null

The default description of the promotion used as fallback when no culture-specific description is available

IsDescriptionInheritedboolean

Indicates whether the description is inherited from the default culture

ImageKeystring or null(guid)

The unique identifier for the promotion image

ImageUrlstring or null

The URL of the promotion image, deprecated, use ImageKey instead.

Codestring or null[ 0 .. 50 ] characters

The unique code identifying the promotion

ExclusivityTypestring or null

Exclusive promotion type: NotExclusive, Exclusive, IgnoreExclusivity. Default is NotExclusive

StartDatestring or null(date-time)

The start date when the promotion becomes active, null means active immediately, if status is Active and start date is in the future the promotion is considered "Coming"

EndDatestring or null(date-time)

The end date when the promotion expires, null means no end date, if status is Active and end date is in the past the promotion is considered "Ended"

CountLeftinteger or null(int32)

The number of usages left for this promotion, if AllowedUsageCount is set

AllowedUsageCountinteger or null(int32)

The maximum number of times this promotion can be used

UsageCountinteger or null(int32)

The total number of times this promotion has been used

UniqueUserUsageCountinteger or null(int32)

The number of unique users who have used this promotion

UniqueDiscountCodeCountinteger or null(int32)

The number of unique discount codes associated with this promotion

UniqueDiscountCodeUsedCountinteger or null(int32)

The number of unique discount codes that have been used for this promotion

TotalOrdernumber or null(decimal)

The total order amount for this promotion

TotalDiscountnumber or null(decimal)

The total discount amount given by this promotion

DiscountPercentagenumber or null(decimal)

The discount percentage applied by this promotion

MarginPercentagenumber or null(decimal)

The margin percentage for this promotion

IsStackableboolean or null

Indicates whether this promotion can be stacked with itself. If true, multiples of the same promotion can be applied, like 3 for 2 deals (6 for 4, etc.). If false, the promotion can only be applied once per order.

IsProductReqboolean

Indicates whether this promotions products can be listed from API calls. If true, products can be listed in a front-end application when building a promotion bundle configuration UI. like choose products to buy with this promotion.

ExcludeFromPriceCalculationboolean

Indicates whether this promotion should be excluded from basket total price, so that other promotions are not validated based on the discounted price from this promotion.

Statusstring or null

Promotion status: Inactive, Active, Draft. Default is Inactive

CurrencyCodestring or null

The currency code for this promotion

StoppedDatestring or null(date-time)

The date and time when the promotion was stopped

StoppedByinteger or null(int32)

The identifier of the user who stopped this promotion

StoppedByNamestring or null

The name of the user who stopped this promotion

Createdstring(date-time)

The date and time when the promotion was created

CreatedByNamestring or null

The name of the user who created this promotion

Changedstring or null

The date and time when the promotion was last changed

ChangedBystring or null

Fullname or Systemname of the user who last changed the promotion

CulturesArray of objects(PromotionCultureModel)

The list of culture-specific translations for this promotion

RequirementsArray of objects(PromotionRequirementSettingModel)

The list of requirements that must be met for this promotion to be applied

EffectsArray of objects(PromotionEffectSettingModel)

The list of effects that will be applied when this promotion is triggered

curl -i -X POST \
  https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion \
  -H 'Content-Type: application/json' \
  -H 'account-id: 0' \
  -H 'application-id: 0' \
  -d '{
    "Id": 0,
    "Name": "string",
    "DefaultName": "string",
    "IsNameInherited": true,
    "SubHeader": "string",
    "DefaultSubHeader": "string",
    "IsSubHeaderInherited": true,
    "SubDescription": "string",
    "DefaultSubDescription": "string",
    "IsSubDescriptionInherited": true,
    "DescriptionHeader": "string",
    "DefaultDescriptionHeader": "string",
    "IsDescriptionHeaderInherited": true,
    "Description": "string",
    "DefaultDescription": "string",
    "IsDescriptionInherited": true,
    "ImageKey": "string",
    "ImageUrl": "string",
    "Code": "string",
    "ExclusivityType": "string",
    "StartDate": "2019-08-24T14:15:22Z",
    "EndDate": "2019-08-24T14:15:22Z",
    "CountLeft": 0,
    "AllowedUsageCount": 0,
    "UsageCount": 0,
    "UniqueUserUsageCount": 0,
    "UniqueDiscountCodeCount": 0,
    "UniqueDiscountCodeUsedCount": 0,
    "TotalOrder": 0,
    "TotalDiscount": 0,
    "DiscountPercentage": 0,
    "MarginPercentage": 0,
    "IsStackable": true,
    "IsProductReq": true,
    "ExcludeFromPriceCalculation": true,
    "Status": "string",
    "CurrencyCode": "string",
    "StoppedDate": "2019-08-24T14:15:22Z",
    "StoppedBy": 0,
    "StoppedByName": "string",
    "Created": "2019-08-24T14:15:22Z",
    "CreatedByName": "string",
    "Changed": "string",
    "ChangedBy": "string",
    "Cultures": [
      {
        "CultureCode": "string",
        "Name": "string",
        "IsNameInherited": true,
        "SubHeader": "string",
        "IsSubHeaderInherited": true,
        "SubDescription": "string",
        "IsSubDescriptionInherited": true,
        "DescriptionHeader": "string",
        "IsDescriptionHeaderInherited": true,
        "Description": "string",
        "IsDescriptionInherited": true,
        "IsTranslated": true
      }
    ],
    "Requirements": [
      {
        "Id": 0,
        "RequirementType": "string",
        "DiscountCode": "string",
        "ValueType": "string",
        "OrderSum": 0,
        "OrderSumMax": 0,
        "IsIncVat": true,
        "ProductsIncluded": "string",
        "CustomerFlagId": 0,
        "CustomerFlagName": "string",
        "IsCustomerFlagIncluded": true,
        "SortOrder": 0,
        "ProductList": [
          {
            "Id": 0,
            "ManufacturerId": 0,
            "ManufacturerCode": "string",
            "ManufacturerName": "string",
            "CategoryId": 0,
            "CategoryCode": "string",
            "CategoryName": "string",
            "FlagId": 0,
            "FlagCode": "string",
            "FlagName": "string",
            "IsFlagInclusive": true,
            "PriceListId": 0,
            "PriceListCode": "string",
            "PriceListName": "string",
            "ProductTypeId": 0,
            "ProductTypeName": "string",
            "ProductId": 0,
            "ProductHasVariants": true,
            "ProductName": "string",
            "VariantProductId": 0,
            "VariantProductName": "string",
            "PartNo": "string",
            "Qty": 0,
            "Changed": "string",
            "ChangedBy": "string"
          }
        ],
        "Changed": "string",
        "ChangedBy": "string",
        "MatchByEachPartNo": true,
        "GenericQty": 0,
        "GenericQtyMax": 0
      }
    ],
    "Effects": [
      {
        "Id": 0,
        "EffectType": "string",
        "IsDiscount": true,
        "IsFixedPrice": true,
        "Value": 0,
        "IsIncVat": true,
        "IgnoreNonDiscountable": true,
        "DiscountMostExpensiveItems": true,
        "SortOrder": 0,
        "UseRequirementProducts": true,
        "GenericQty": 0,
        "ProductList": [
          {
            "Id": 0,
            "ManufacturerId": 0,
            "ManufacturerCode": "string",
            "ManufacturerName": "string",
            "CategoryId": 0,
            "CategoryCode": "string",
            "CategoryName": "string",
            "FlagId": 0,
            "FlagCode": "string",
            "FlagName": "string",
            "IsFlagInclusive": true,
            "PriceListId": 0,
            "PriceListCode": "string",
            "PriceListName": "string",
            "ProductTypeId": 0,
            "ProductTypeName": "string",
            "ProductId": 0,
            "ProductHasVariants": true,
            "ProductName": "string",
            "VariantProductId": 0,
            "VariantProductName": "string",
            "PartNo": "string",
            "Qty": 0,
            "IsDiscount": true,
            "IsFixedPrice": true,
            "Value": 0,
            "IsIncVat": true,
            "Changed": "string",
            "ChangedBy": "string"
          }
        ],
        "Changed": "string",
        "ChangedBy": "string"
      }
    ]
  }'

Responses

If the promotion was successfully added

Bodyapplication/json
integer(int32)
Response
application/json
0

Get unique checkout codes for a promotion

Request

Get a list of unique checkout codes for a specific promotion

Path
idinteger(int32)required

Promotion id

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

curl -i -X GET \
  'https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion/{id}/unique-codes' \
  -H 'account-id: 0' \
  -H 'application-id: 0'

Responses

Returns the list of unique checkout codes with their details

Bodyapplication/jsonArray [
DiscountCodestring or null[ 0 .. 50 ] characters

The unique identifier for the promotion unique discount code

Createdstring(date-time)

The date and time the unique discount code was created

IsClaimedboolean

Indicates whether the unique discount code has been claimed

DateClaimedstring or null(date-time)

The date and time the unique discount code was claimed, if applicable

QuotationIdinteger or null(int32)

The identifier of the quotation associated with the claim, if applicable

ClaimedFromSourcestring or null[ 0 .. 50 ] characters

The source from which the unique discount code was claimed, if applicable. Null if claimed in Norce directly. Set to external system name if claimed via an integration.

]
Response
application/json
[ { "DiscountCode": "string", "Created": "2019-08-24T14:15:22Z", "IsClaimed": true, "DateClaimed": "2019-08-24T14:15:22Z", "QuotationId": 0, "ClaimedFromSource": "string" } ]

Update unique checkout codes for a promotion

Request

Update or add unique checkout codes for a specific promotion, set "isclaimed" and by "source" if external service has claimed the codes

Path
idinteger(int32)required

Promotion id

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

Bodyapplication/jsonrequired

Codes to update or add

Array [
DiscountCodestring or null[ 0 .. 50 ] characters

The unique identifier for the promotion unique discount code

Createdstring(date-time)

The date and time the unique discount code was created

IsClaimedboolean

Indicates whether the unique discount code has been claimed

DateClaimedstring or null(date-time)

The date and time the unique discount code was claimed, if applicable

QuotationIdinteger or null(int32)

The identifier of the quotation associated with the claim, if applicable

ClaimedFromSourcestring or null[ 0 .. 50 ] characters

The source from which the unique discount code was claimed, if applicable. Null if claimed in Norce directly. Set to external system name if claimed via an integration.

]
curl -i -X PUT \
  'https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion/{id}/unique-codes' \
  -H 'Content-Type: application/json' \
  -H 'account-id: 0' \
  -H 'application-id: 0' \
  -d '[
    {
      "DiscountCode": "string",
      "Created": "2019-08-24T14:15:22Z",
      "IsClaimed": true,
      "DateClaimed": "2019-08-24T14:15:22Z",
      "QuotationId": 0,
      "ClaimedFromSource": "string"
    }
  ]'

Responses

Returns the list of updated or added unique checkout codes with their details

Bodyapplication/jsonArray [
string
]
Response
application/json
[ "string" ]

Add unique checkout codes for a promotion

Request

Add new unique checkout codes for a specific promotion, appending to existing codes

Path
idinteger(int32)required

Promotion id

Headers
account-idintegerrequired

User Account ID

application-idintegerrequired

Application ID

Bodyapplication/jsonrequired

Codes to add

Array [
DiscountCodestring or null[ 0 .. 50 ] characters

The unique identifier for the promotion unique discount code

Createdstring(date-time)

The date and time the unique discount code was created

IsClaimedboolean

Indicates whether the unique discount code has been claimed

DateClaimedstring or null(date-time)

The date and time the unique discount code was claimed, if applicable

QuotationIdinteger or null(int32)

The identifier of the quotation associated with the claim, if applicable

ClaimedFromSourcestring or null[ 0 .. 50 ] characters

The source from which the unique discount code was claimed, if applicable. Null if claimed in Norce directly. Set to external system name if claimed via an integration.

]
curl -i -X POST \
  'https://customer-slug.api-se.playground.norce.tech/commerce/management/1.0/api/promotion/{id}/unique-codes' \
  -H 'Content-Type: application/json' \
  -H 'account-id: 0' \
  -H 'application-id: 0' \
  -d '[
    {
      "DiscountCode": "string",
      "Created": "2019-08-24T14:15:22Z",
      "IsClaimed": true,
      "DateClaimed": "2019-08-24T14:15:22Z",
      "QuotationId": 0,
      "ClaimedFromSource": "string"
    }
  ]'

Responses

Returns the count of added unique checkout codes

Bodyapplication/json
integer(int32)
Response
application/json
0

Product RelationType

Operations

PriceList RoundingRule

Operations

Shopping InfoType

Operations

Store Application

Operations

Store PriceList

Operations

Store

Operations

Store Warehouse

Operations

Supplier PriceList

Operations

Supplier PriceListWarehouse

Operations

Supplier

Operations

Supplier Warehouse

Operations

Supplier WarehouseLocation

Operations

Product VariantGroup

Operations

Product WarehouseLocation

Operations

Product Warehouse

Operations