Download OpenAPI specification:Download
Manage price information for products.
Key Features:
Key Benefits:
Retrieves all price lists assigned to the tenant. You can filter the results with query parameters.
price.pricelist_read
The request was successful. A list of price lists is returned.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "id": "example-id-1",
- "name": {
- "en": "Example Price List 1"
}, - "currency": "EUR",
- "countries": [
- "PL"
], - "customerGroups": [
- "customer-group-1",
- "customer-group-2"
], - "siteCode": "example-site-1",
- "validity": {
- "from": "2022-05-01T00:00:00.000Z",
- "to": "2025-05-01T00:00:00.000Z"
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}, - {
- "id": "example-id-2",
- "name": {
- "en": "Example Price List 2"
}, - "currency": "EUR",
- "regions": [
- "DACH"
], - "customerGroups": [
- "customer-group-1"
], - "siteCode": "example-site-2",
- "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
]
Creates a new price list.
price.pricelist_manage
The request was successful. The price list has been created.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "name": {
- "en": "Example Price List 1"
}, - "currency": "EUR",
- "countries": [
- "PL"
], - "customerGroups": [
- "customer-group-1",
- "customer-group-2"
], - "siteCode": "example-site-1",
- "validity": {
- "from": "2022-05-01T00:00:00.000Z",
- "to": "2025-05-01T00:00:00.000Z"
}
}
{- "id": "6245a8f578a8576e338fa9c2"
}
Retrieves a specified price list's details by priceListId.
price.pricelist_read
The request was successful. The price list is returned.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested price list could not be found.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "example-id-1",
- "name": {
- "en": "Example Price List 1"
}, - "currency": "EUR",
- "countries": [
- "PL"
], - "customerGroups": [
- "customer-group-1",
- "customer-group-2"
], - "siteCode": "example-site-1",
- "validity": {
- "from": "2022-05-01T00:00:00.000Z",
- "to": "2025-05-01T00:00:00.000Z"
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
Updates a specified price list by priceListId
price.pricelist_manage
The request was successful. The price list has been updated.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested price list could not be found.
Some server-side error occurred. Details are provided in the response payload.
{- "name": {
- "en": "Example Price List 1"
}, - "currency": "EUR",
- "countries": [
- "DE"
], - "customerGroups": [
- "customer-group-3"
], - "siteCode": "example-site-1",
- "validity": {
- "from": "2022-05-01T00:00:00.000Z",
- "to": "2025-05-01T00:00:00.000Z"
}, - "metadata": {
- "version": 1
}
}
{- "fault": {
- "faultstring": "Invalid access token",
- "detail": {
- "errorcode": "oauth.v2.InvalidAccessToken"
}
}
}
Deletes a specified price list by priceListId.
Important: All prices assigned to the price list will be deleted as well, in an asynchronous manner.
price.pricelist_manage
The request was successful. The price list has been deleted.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "fault": {
- "faultstring": "Invalid access token",
- "detail": {
- "errorcode": "oauth.v2.InvalidAccessToken"
}
}
}
Finds the best price based on specified criteria.
In simplification, the price matching algorithm is made up of the following steps:
originalValue
is calculated for each price.effectiveValue
is returned.To use the price matching functionality, you need to define appropriate tax classes in the Tax Service and then assign them to products for which prices will be matched through the Product Service.
Special cases:
If the matched price currency is different than the requested currency, the price is calculated based on exchange rates.
Note: To calculate prices in different currencies, you need to define their exchange rates in the Currency Service.
If the matched price location is different than the requested location, the price is calculated based on tax classes.
Note: To calculate prices for different locations, you need to assign their tax classes to the product for which the price is matched. Tax classes need to be defined in the Tax Service and then assigned to the product through the Product Service.
The includesTax
setting, defined at the site or price model level, determines if the algorithm returns net or gross prices. The endpoint returns the best price as a gross or net depending on the following cases:
includesTax
field is specified (through the Site Settings Service):includesTax
field is set to true
, the matched price is returned as a gross value.includesTax
field is set to false
, the matched price is returned as a net value.includesTax
field is not specified:includesTax
field in the price model associated with the price is set to true
, the matched price is returned as a gross value.includesTax
field in the price model associated with the price is set to false
, the matched price is returned as a net value.price.price_manage
price.price_read
OK
Bad Request
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Not Found
Some server-side error occurred. Details are provided in the response payload.
{- "targetCurrency": "EUR",
- "siteCode": "1111",
- "targetLocation": {
- "countryCode": "DE"
}, - "items": [
- {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "quantity": {
- "quantity": 10,
- "unitCode": "kg"
}
}
]
}
{- "priceId": "6245aa0a78a8576e338fa9c4",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "site": {
- "code": "1111"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "originalValue": 13.55,
- "effectiveValue": 13.55,
- "totalValue": 1355,
- "quantity": {
- "quantity": 10,
- "unitCode": "kg"
}, - "includesTax": true,
- "priceModel": {
- "id": "6245a8f578a8576e338fa9c3",
- "name": {
- "en": "Tiered in grams"
}, - "includesTax": true,
- "includesMarkup": true,
- "measurementUnit": {
- "quantity": 0.1,
- "unitCode": "kg"
}, - "tierDefinition": {
- "tierType": "TIERED",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "kg"
}
}, - {
- "minQuantity": {
- "quantity": 0.5,
- "unitCode": "kg"
}
}, - {
- "minQuantity": {
- "quantity": 5,
- "unitCode": "kg"
}
}
]
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:13:25.816Z",
- "modifiedAt": "2022-03-31T13:13:25.816Z"
}
}, - "tax": {
- "taxClass": "STANDARD",
- "taxRate": 20,
- "prices": {
- "originalValue": {
- "netValue": 10.84,
- "grossValue": 13.55,
- "taxValue": 2.71
}, - "effectiveValue": {
- "netValue": 10.84,
- "grossValue": 13.55,
- "taxValue": 2.71
}, - "totalValue": {
- "netValue": 1084,
- "grossValue": 1355,
- "taxValue": 271
}
}
}, - "tierValues": [
- {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 15.55
}, - {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 14.55
}, - {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 13.55
}
], - "metadata": {
- "version": "1",
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
Finds the best price based on information retrieved from the session context.
The behavior of the logic is the same as of the /{tenant}/match-prices (function/mechanism?). The only exception is that the criteria are created based on the information retrieved from the session details assigned to the access-token in the Session-context Service`.
The list of items is also needed as body parameter (similar to the other endpoint).
The prices were successfully matched.
Bad Request
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Not Found
Some server-side error occurred. Details are provided in the response payload.
{- "items": [
- {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a39d95bac380024b93c24"
}, - "quantity": {
- "quantity": 1,
- "unitCode": "kg"
}
}
]
}
{- "priceId": "6245aa0a78a8576e338fa9c4",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "site": {
- "code": "1111"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "originalValue": 13.55,
- "effectiveValue": 13.55,
- "totalValue": 1355,
- "quantity": {
- "quantity": 10,
- "unitCode": "kg"
}, - "includesTax": true,
- "priceModel": {
- "id": "6245a8f578a8576e338fa9c3",
- "name": {
- "en": "Tiered in grams"
}, - "includesTax": true,
- "includesMarkup": true,
- "measurementUnit": {
- "quantity": 0.1,
- "unitCode": "kg"
}, - "tierDefinition": {
- "tierType": "TIERED",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "kg"
}
}, - {
- "minQuantity": {
- "quantity": 0.5,
- "unitCode": "kg"
}
}, - {
- "minQuantity": {
- "quantity": 5,
- "unitCode": "kg"
}
}
]
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:13:25.816Z",
- "modifiedAt": "2022-03-31T13:13:25.816Z"
}
}, - "tax": {
- "taxClass": "STANDARD",
- "taxRate": 20,
- "prices": {
- "originalValue": {
- "netValue": 10.84,
- "grossValue": 13.55,
- "taxValue": 2.71
}, - "effectiveValue": {
- "netValue": 10.84,
- "grossValue": 13.55,
- "taxValue": 2.71
}, - "totalValue": {
- "netValue": 1084,
- "grossValue": 1355,
- "taxValue": 271
}
}
}, - "tierValues": [
- {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 15.55
}, - {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 14.55
}, - {
- "id": "04e9b68bc1ea4982a42247726239e7be",
- "priceValue": 13.55
}
], - "metadata": {
- "version": "1",
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
Creates a new price model.
A price model can be defined as a repeatable way to sell products in a market with the intention of making a profit. Price models define basic structures for prices, including whether the prices are expressed as gross or net or the measurement units for which prices are defined.
Each price model can specify one of three pricing strategies:
price.pricemodel_manage
The request was successful. The price model has been created.
Request was syntactically incorrect. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
{- "includesTax": true,
- "includesMarkup": true,
- "name": "Piece price model",
- "description": "Sample description",
- "tierDefinition": {
- "tierType": "BASIC",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "pc"
}
}
]
}, - "measurementUnit": {
- "quantity": 0,
- "unitCode": "pc"
}
}
{- "id": "string"
}
Retrieves all price models assigned to the tenant. You can filter the results with query parameters.
A price model can be defined as a repeatable way to sell products in a market with the intention of making a profit. Price models define basic structures for prices.
price.pricemodel_read
pageNumber | integer >= 1 Default: 1 Page number to be retrieved. The number of the first page is 1. Note: If the | ||||||
pageSize | integer >= 1 Default: 60 Number of items to be retrieved per page. | ||||||
sort | string List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting. Possible values:
Note: If you want to sort the results by localized properties, the possible values are:
If the sorting direction is not specified, the fields are sorted in ascending order. Example: sort=name,code:desc | ||||||
includesTax | boolean Flag indicating whether prices assigned to the price model are expressed as net or gross.
| ||||||
includesMarkup | boolean Flag indicating whether prices assigned to the price model include markup. Note: This is a preview field. | ||||||
tierType | string Pricing strategy applicable to the price model. Possible values:
| ||||||
name | string Price model's name. | ||||||
description | string Price model's description. | ||||||
unitcode | string Filter price models by unit code |
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
X-Total-Count | boolean Default: false Flag indicating whether the total count of retrieved items should be returned. |
The request was successful. A list of price models is returned.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
[- {
- "id": "6245a8f578a8576e338fa9c2",
- "name": "Tiered price model",
- "includesTax": true,
- "includesMarkup": true,
- "default": true,
- "measurementUnit": {
- "quantity": 50,
- "unitCode": "g"
}, - "tierDefinition": {
- "tierType": "TIERED",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 100,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 500,
- "unitCode": "g"
}
}
]
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:13:25.816Z",
- "modifiedAt": "2022-03-31T13:13:25.816Z"
}
}
]
Retrieves a specified price model's details by priceModelId.
A price model can be defined as a repeatable way to sell products in a market with the intention of making a profit. Price models define basic structures for prices.
price.pricemodel_read
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
The request was successful. The price model is returned.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested resource does not exist.
[- {
- "id": "6245a8f578a8576e338fa9c2",
- "name": "Tiered price model",
- "includesTax": true,
- "includesMarkup": true,
- "measurementUnit": {
- "quantity": 50,
- "unitCode": "g"
}, - "tierDefinition": {
- "tierType": "TIERED",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 100,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 500,
- "unitCode": "g"
}
}
]
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:13:25.816Z",
- "modifiedAt": "2022-03-31T13:13:25.816Z"
}
}
]
Updates a specified price model's details by priceModelId.
price.pricemodel_manage
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id | string Custom price model identifier. If not provided, it is automatically generated. | ||||||
includesTax required | boolean Flag indicating whether prices assigned to the price model will be expressed as net or gross.
| ||||||
includesMarkup | boolean Flag indicating whether prices assigned to the price model include markup. Note: This is a preview field. | ||||||
default | boolean Indicates whether the price model is default one or not. | ||||||
required | object or string Price model name. It should be a brief, human-readable name that describes purposes of the model.
Note: You can provide the names only in languages defined in the Configuration Service. In case the name is provided in a language that is not defined in the Configuration Service, the request will be rejected. | ||||||
object or string Price model description. It can contain details about the price model.
Note: You can provide the descriptions only in languages defined in the Configuration Service. In case the description is provided in a language that is not defined in the Configuration Service, the request will be rejected. | |||||||
required | object Definition of pricing tiers. | ||||||
required | object Measurement unit and quantity for which the price is defined. For example, if a product is sold by the piece, the field should contain |
The request was successful. The price model has been updated.
Request was syntactically incorrect. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested resource does not exist.
{- "id": "6245a8f578a8576e338fa9c2",
- "name": "Tiered price model",
- "includesTax": true,
- "includesMarkup": true,
- "measurementUnit": {
- "quantity": 50,
- "unitCode": "g"
}, - "tierDefinition": {
- "tierType": "TIERED",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 100,
- "unitCode": "g"
}
}, - {
- "minQuantity": {
- "quantity": 500,
- "unitCode": "g"
}
}
]
}, - "metadata": {
- "version": 1
}
}
{- "code": 400,
- "status": "Bad Request",
- "message": "Tenant in the header is not matching with the one provided in the URI."
}
Deletes a specified price model by priceModel Id.
Important: If you want to delete a price model that has prices assigned to it, you need to set the forceDelete
query parameter to true
. In this case, all prices assigned to the price model will be deleted as well, in an asynchronous manner.
price.pricemodel_manage
price.pricemodel_manage_admin
Note: The price.pricemodel_manage_admin
scope is only required if you want to delete a price model that has prices assigned to it.
forceDelete | boolean
|
The request was successful. The price model has been deleted.
Request was syntactically incorrect. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
{- "code": 400,
- "status": "Bad Request",
- "message": "Tenant in the header is not matching with the one provided in the URI."
}
Creates a new price for a specified product.
price.price_manage
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id | string Custom price identifier. If not provided, it is automatically generated. |
required | object Item for which the price is defined. |
itemYrn | string Product's uniform resource name. |
currency required | string (currency) [A-Z]{3} Currency code, compliant with the ISO 4217 standard. |
required | object |
object | |
object Restrictions that limit the validity of the price model and prices assigned to it. | |
priceModelId | string ID of the price model to which the price should assigned. If the ID is not provided, the default price model is used. |
required | Array of objects Prices for tiers specified in the price model. The prices will be assigned to tiers based on the entered order (the first value will be assigned to the first tier, the second value to second tier). Note: If this field does not contain values for all tiers defined in the price model, the endpoint responds with an error. |
mixins | object Map of custom price attributes. |
object |
The request was successful. The price has been created.
Bad Request
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "6245aa0a78a8576e338fa9c4",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
]
}
{- "id": "624c3e7c3406122baacc7e93"
}
Retrieves all prices assigned to the tenant. You can filter the results with query parameters.
No specific scopes are required.
siteCode | string Default: "main" Codes of sites for which prices should be retrieved. |
currency | string Codes of currencies in which prices should be retrieved. |
effectiveDate | string Default: "2022-01-01T00:00:00Z" Date on which retrieved prices should be valid, compliant with the ISO 8601 standard. Format: |
sort | string List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting. Possible values:
Note: If you want to sort the results by localized properties, the possible values are:
If the sorting direction is not specified, the fields are sorted in ascending order. |
pageNumber | integer >= 1 Default: 1 Page number to be retrieved. The number of the first page is 1. Note: If the |
pageSize | integer >= 1 Default: 60 Number of items to be retrieved per page. |
principalId | string IDs of customers for whom the retrieved prices should be valid. Note: This parameter is only available in the |
priceModelId | string ID of the price model to which the retrieved prices should be assigned. Note: This parameter is only available in the |
itemId | string IDs of products for which prices should be retrieved. Note: This parameter is only available in the |
itemType | string Item types for which prices should be retrieved. Possible values:
Note: This parameter is only available in the |
country | string Codes of countries for which prices should be retrieved. Note: This parameter is only available in the |
itemName | string A product or SKU name. This attribute is available only for Price v2 |
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
The request was successful. A list of prices is returned.
Request was syntactically incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "id": "6245aa0a78a8576e338fa9c4",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z",
}
}
]
Creates multiple prices.
Response for a particular price will be returned at the same position (index) at which that price is located in the request body.
price.price_manage
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id | string Custom price identifier. If not provided, it is automatically generated. |
required | object Item for which the price is defined. |
itemYrn | string Product's uniform resource name. |
currency required | string (currency) [A-Z]{3} Currency code, compliant with the ISO 4217 standard. |
required | object |
object | |
object Restrictions that limit the validity of the price model and prices assigned to it. | |
priceModelId | string ID of the price model to which the price should assigned. If the ID is not provided, the default price model is used. |
required | Array of objects Prices for tiers specified in the price model. The prices will be assigned to tiers based on the entered order (the first value will be assigned to the first tier, the second value to second tier). Note: If this field does not contain values for all tiers defined in the price model, the endpoint responds with an error. |
mixins | object Map of custom price attributes. |
object |
Multi-Status
Bad Request
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
]
}, - {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c46"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 20
}, - {
- "priceValue": 18
}, - {
- "priceValue": 16
}
]
}
]
[- {
- "index": 0,
- "id": "62d65a15088ed94ebf093d7d",
- "code": 201,
- "status": "CREATED"
}, - {
- "index": 1,
- "id": "62d65a15088ed94ebf093d8d",
- "code": 201,
- "status": "CREATED"
}
]
Updates multiple prices.
Response for a particular price will be returned at the same position (index) at which that price is located in the request body.
price.price_manage
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id | string A price identifier. |
object Item for which the price is defined. | |
itemYrn | string Product's uniform resource name. |
currency | string Currency code, as defined in the Currency Service. |
object | |
object | |
priceModelId | string ID of the price model to which the price is assigned. If the ID is not provided, the default price model is used. |
object (restrictions) Restrictions that limit the validity of the price model and prices assigned to it. | |
Array of objects (tierValueRetrieval) | |
mixins | object Custom price attributes. |
object (priceMetadata) | |
object (priceModelExpand) Price model to which the price is assigned. Note: This field is only returned if the |
Multi-Status
Bad Request
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "id": "6245aa0a78a8576e338fa9c4",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1
}
}, - {
- "id": "6245aa0a78a8576e338fa9c5",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c46"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 20
}, - {
- "priceValue": 18
}, - {
- "priceValue": 16
}
], - "metadata": {
- "version": 1
}
}
]
[- {
- "index": 0,
- "id": "62d65a15088ed94ebf093d7d",
- "code": 204,
- "status": "NO_CONTENT"
}, - {
- "index": 1,
- "id": "62d65a15088ed94ebf093d8d",
- "code": 400,
- "status": "BAD_REQUEST",
- "message": "The site(s) with code(s):[abcd] do(es) not exist on tenant:tenantname. Please provide valid site codes"
}
]
Retrieves a specified price's details by priceId.
No specific scopes are required.
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
The request was successful. Price details are returned.
Request was syntactically incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
The requested resource does not exist.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "62468170bddc000efeb10781",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1,
- "createdAt": "2022-04-01T04:37:04.301Z",
- "modifiedAt": "2022-04-01T04:37:04.301Z"
}
}
Updates specified price's details by priceId.
price.price_manage
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id | string A price identifier. |
object Item for which the price is defined. | |
itemYrn | string Product's uniform resource name. |
currency | string Currency code, as defined in the Currency Service. |
object | |
object | |
priceModelId | string ID of the price model to which the price is assigned. If the ID is not provided, the default price model is used. |
object (restrictions) Restrictions that limit the validity of the price model and prices assigned to it. | |
Array of objects (tierValueRetrieval) | |
mixins | object Custom price attributes. |
object (priceMetadata) | |
object (priceModelExpand) Price model to which the price is assigned. Note: This field is only returned if the |
The request was successful. The price has been updated.
Request was syntactically incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested resource does not exist.
The request could not be completed due to a conflict with the current state of the target resource.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "62468170bddc000efeb10781",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "5f5a3a365bac380024b93c45"
}, - "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "restrictions": {
- "siteCodes": [
- "1111"
]
}, - "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1
}
}
{- "code": 400,
- "status": "Bad Request",
- "message": "Tenant in the header is not matching with the one provided in the URI."
}
Deletes a specified price by priceId.
price.price_manage
The request was successful. The price has been updated.
Request was syntactically incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested resource does not exist.
Some server-side error occurred. Details are provided in the response payload.
{- "code": 400,
- "status": "Bad Request",
- "message": "Tenant in the header is not matching with the one provided in the URI."
}
Retrieves prices (or a single price) for a list of products.
price.price_read
price.price_manage
itemIds required | Array of strings [ 1 .. 100 ] items List of item IDs for which the prices should be retrieved. |
currency | string[A-Z]{3} Currency in which the prices should be retrieved, as defined in the Currency Service. |
siteCode | string Code of the site for which the prices should be retrieved. |
principalId | string IDs of customers for whom the retrieved prices should be valid. |
effectiveDate | string Date on which retrieved prices should be valid, compliant with the ISO 8601 standard. Format:
|
includesTax | boolean Flag indicating whether the prices should be retrieved as net or a gross values. |
useFallback | boolean Default: false If no price that matches the criteria is found for the specified site, the price searching functionality will try to find the best price for the Note: Using the fallback mechanism may impact the performance as the price searching has to run a second time. If the fallback mechanism is used, the response's |
searchMode | string Default: "ALL_PRICES" Search mode indicating which prices should be taken into account regarding their principal-related restrictions. Possible values:
|
Prices have been successfully retrieved.
Request was syntactically incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Some server-side error occurred. Details are provided in the response payload.
{- "itemIds": [
- "62d7d67da07705795f72f313",
- "62d7d67da07705795f72f314"
], - "currency": "EUR",
- "siteCode": "Berlin",
- "principalId": "principalId",
- "effectiveDate": "2022-01-01T00:00:00Z",
- "includesTax": true,
- "useFallback": false,
- "searchMode": "ALL_PRICES"
}
[- {
- "itemId": "62d7d680a07705795f72f314",
- "prices": [ ]
}, - {
- "itemId": "62d7d67da07705795f72f313",
- "prices": [
- {
- "id": "62d7d67d92eb0f38a72a2a16",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "62d7d67da07705795f72f313"
}, - "itemYrn": "urn:yaas:saasag:caasproduct:product:testtenant;62d7d67da07705795f72f313",
- "currency": "EUR",
- "location": {
- "countryCode": "DE"
}, - "salePrice": {
- "discountRate": 0
}, - "priceModelId": "62d7d67d92eb0f38a72a2a13",
- "restrictions": {
- "principals": [
- {
- "type": "CUSTOMER",
- "id": "18637136"
}
], - "validity": {
- "from": "2021-08-31T00:07:42.518Z",
- "to": "2026-08-31T00:07:42.518Z"
}, - "siteCodes": [
- "Berlin"
]
}, - "tierValues": [
- {
- "priceValue": 10
}
], - "priceModel": {
- "id": "62d7d67d92eb0f38a72a2a13",
- "name": {
- "de": "Basic"
}, - "description": {
- "de": "Basic price model"
}, - "includesTax": false,
- "includesMarkup": true,
- "measurementUnit": {
- "quantity": 1,
- "unitCode": "pc"
}, - "tierDefinition": {
- "tierType": "BASIC",
- "tiers": [
- {
- "minQuantity": {
- "quantity": 0,
- "unitCode": "pc"
}
}
]
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-07-20T10:18:37.265Z",
- "modifiedAt": "2022-07-20T10:18:37.265Z"
}, - "default": false
}, - "mixins": {
- "test2": {
- "atr1": "test",
- "atr2": "test2"
}, - "test1": {
- "atr1": "test",
- "atr2": "test2"
}
}, - "metadata": {
- "version": 1,
- "createdAt": "2022-07-20T10:18:37.984Z",
- "modifiedAt": "2022-07-20T10:18:37.984Z",
- "mixins": {
- "test2": "url2",
- "test1": "url1"
}
}
}
]
}
]
Retrieves all prices assigned to a specified price list. You can filter the results with query parameters.
price.pricelist_read
pageNumber | integer >= 1 Default: 1 Page number to be retrieved. The number of the first page is 1. Note: If the |
pageSize | integer >= 1 Default: 60 Number of items to be retrieved per page. |
sort | string List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting. Possible values:
Note: If you want to sort the results by localized properties, the possible values are:
If the sorting direction is not specified, the fields are sorted in ascending order. Example: sort=name,code:desc |
priceModelId | string ID of the price model to which the retrieved prices should be assigned. |
itemId | string IDs of products for which prices should be retrieved. |
itemType | string Item types for which prices should be retrieved. Possible values:
|
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
X-Total-Count | boolean Default: false Flag indicating whether the total count of retrieved items should be returned. |
The request was successful. A list of prices is returned.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "id": "example-priceListPrice-id-1",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}, - {
- "id": "example-priceListPrice-id-2",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4f"
}, - "priceModelId": "6245a8f578a8576e338fa9c4",
- "tierValues": [
- {
- "priceValue": 20.99
}, - {
- "priceValue": 12.99
}
], - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
]
Creates a new price for a specified price list.
price.pricelist_manage
The request was successful. The price has been created and added to the price list.
The request was incorrect. Details are provided in the response payload.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
]
}
{- "id": "6245a8f578a8576e338fa9c2"
}
Deletes multiple prices from a specified price list.
To indicate which prices should be deleted from the price list, you need to put their IDs in an array of strings and send it through the request body. The request body should look like this: ["exampleID1", "exampleID2"]
price.pricelist_manage
Price list's prices have successfully been deleted.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "fault": {
- "faultstring": "Invalid access token",
- "detail": {
- "errorcode": "oauth.v2.InvalidAccessToken"
}
}
}
Creates multiple prices for a specified price list.
Response for a particular price will be returned at the same position (index) at which that price is located in the request body.
price.pricelist_manage
Multiple status response. The details are provided in a form of a list of responses within the body.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
]
}, - {
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4f"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 20.99
}, - {
- "priceValue": 18.99
}, - {
- "priceValue": 16.99
}
]
}
]
[- {
- "index": 0,
- "id": "62d65a15088ed94ebf093d7d",
- "code": 201,
- "status": "Created"
}, - {
- "index": 1,
- "id": "62d65a15088ed94ebf093d8d",
- "code": 201,
- "status": "Created"
}
]
Updates multiple prices in a specified price list.
Response for a particular price will be returned at the same position (index) at which that price is located in the request body.
price.pricelist_manage
id required | string Unique identifier of the price that belongs to a price list, generated when the price is created and added to the price list. |
required | object Item for which the price is defined. |
priceModelId required | string ID of the price model to which the price is assigned. If the ID is not provided, the default price model is used. |
required | Array of objects |
required | object |
Multiple status response. The details are provided in a form of a list of responses within the body.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
[- {
- "id": "example-priceListPrice-id-1",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1
}
}, - {
- "id": "example-priceListPrice-id-2",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4f"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 20.99
}, - {
- "priceValue": 18.99
}, - {
- "priceValue": 16.99
}
], - "metadata": {
- "version": 1
}
}
]
[- {
- "index": 0,
- "id": "62d65a15088ed94ebf093d7d",
- "code": 204,
- "status": "No Content"
}, - {
- "index": 1,
- "id": "62d65a15088ed94ebf093d8d",
- "code": 204,
- "status": "No Content"
}
]
Retrieves details for a specified price that belongs to a price list.
price.pricelist_read
tenant required | string [ 3 .. 16 ] characters ^[a-z][a-z0-9]+$ Your Emporix tenant's name. Note: The tenant should always be written in lowercase. |
priceListId required | string Price list's unique identifier, generated when the price list is created. |
priceId required | string Price list price's unique identifier, generated when the price list's price is created. |
Accept-Language | string List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields.
|
The request was successful. The price list's price is returned.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested price list's price could not be found.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "example-priceListPrice-id-1",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 15.99
}, - {
- "priceValue": 14.99
}, - {
- "priceValue": 13.99
}
], - "metadata": {
- "version": 1,
- "createdAt": "2022-03-31T13:18:02.379Z",
- "modifiedAt": "2022-03-31T13:18:02.379Z"
}
}
Updates a specified price list's price
price.pricelist_manage
tenant required | string [ 3 .. 16 ] characters ^[a-z][a-z0-9]+$ Your Emporix tenant's name. Note: The tenant should always be written in lowercase. |
priceListId required | string Price list's unique identifier, generated when the price list is created. |
priceId required | string Price list price's unique identifier, generated when the price list's price is created. |
Content-Language | string List of languages in which localized fields in the request body are provided.
Note: You can provide the localized fields only in languages defined in the Configuration Service. In case the fields are provided in languages that are not defined in the Configuration Service, the request will be rejected. |
id required | string Unique identifier of the price that belongs to a price list, generated when the price is created and added to the price list. |
required | object Item for which the price is defined. |
priceModelId required | string ID of the price model to which the price is assigned. If the ID is not provided, the default price model is used. |
required | Array of objects |
required | object |
The request was successful. The price list's price has been updated.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
The requested price list's price could not be found.
Some server-side error occurred. Details are provided in the response payload.
{- "id": "example-priceListPrice-id-1",
- "itemId": {
- "itemType": "PRODUCT",
- "id": "53a358901b2e9dd2718b5c4e"
}, - "priceModelId": "6245a8f578a8576e338fa9c3",
- "tierValues": [
- {
- "priceValue": 25.99
}, - {
- "priceValue": 24.99
}, - {
- "priceValue": 23.99
}
], - "metadata": {
- "version": 1
}
}
{- "fault": {
- "faultstring": "Invalid access token",
- "detail": {
- "errorcode": "oauth.v2.InvalidAccessToken"
}
}
}
Deletes a specified price list's price.
price.pricelist_manage
tenant required | string [ 3 .. 16 ] characters ^[a-z][a-z0-9]+$ Your Emporix tenant's name. Note: The tenant should always be written in lowercase. |
priceListId required | string Price list's unique identifier, generated when the price list is created. |
priceId required | string Price list price's unique identifier, generated when the price list's price is created. |
The request was successful. The price has been deleted from the price list.
Given request is unauthorized - the authorization token is invalid or has expired. Details are provided in the response payload.
Given authorization scopes are not sufficient and do not match the scopes required by the endpoint.
Some server-side error occurred. Details are provided in the response payload.
{- "fault": {
- "faultstring": "Invalid access token",
- "detail": {
- "errorcode": "oauth.v2.InvalidAccessToken"
}
}
}