Price lists

Retrieving all price lists

get

Retrieves all price lists assigned to the tenant. You can filter the results with query parameters.

Required scopes

  • price.pricelist_read

Authorizations
Path parameters
tenantstring · min: 3 · max: 16Required

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Pattern: ^[a-z][a-z0-9]+$
Query parameters
pageNumberinteger · min: 1Optional

Page number to be retrieved. The number of the first page is 1.

Note: If the pageNumber parameter is passed, size of the pages must be specified in the pageSize parameter.

Default: 1
pageSizeinteger · min: 1Optional

Number of items to be retrieved per page.

Default: 60
sortstringOptional

List of properties used to sort the results, separated by colons. The order of properties indicates their priority in sorting.

Possible values:

  • {fieldName}
  • {fieldName}:asc
  • {fieldName}:desc

Note: If you want to sort the results by localized properties, the possible values are:

  • {fieldName}.{language}
  • {fieldName}.{language}:asc
  • {fieldName}.{language}:desc

If the sorting direction is not specified, the fields are sorted in ascending order.

Example: name,code:desc
namestringOptional

Price list's name.

effectiveDatestringOptional

Date on which retrieved prices should be valid, compliant with the ISO 8601 standard. Format:date-fullyear "-" date-month "-" date-mday "T" partial-time time-offset

Example: 2022-01-01T00:00:00Z
currencystringOptional

Code of the currency in which the prices are expressed, as defined in the Currency Service.

countrystringOptional

Code of the country to which the price list applies, as defined in the Country Service.

siteCodestringOptional

Code of the site to which the price list applies.

customerGroupsstringOptional

Comma separated list of IDs of the customer groups to which the price list applies.

regionstringOptional

Code of the region to which the price list applies.

Header parameters
Accept-LanguagestringOptional

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.

  • If the header is set to a particular language or a list of languages, all localized fields are retrieved as a map of single translation, where the key is a language code and the value is in a respective language.
  • If the header is set to *, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages.
  • If the header is empty, localized fields are retrieved as maps of single translation, where the key is a language code and the value is in a respective language. The endpoint will asume that the localized fields are provided in the default language defined in the Configuration Service.
X-Total-CountbooleanOptional

Flag indicating whether the total count of retrieved items should be returned.

Default: false
Responses
200
The request was successful. A list of price lists is returned.
application/json
get
GET /price/{tenant}/price-lists HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
[
  {
    "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"
    }
  }
]

Creating a new price list

post

Creates a new price list.

Required scopes

  • price.pricelist_manage

Authorizations
Path parameters
tenantstring · min: 3 · max: 16Required

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Pattern: ^[a-z][a-z0-9]+$
Header parameters
Content-LanguagestringOptional

List of languages in which localized fields in the request body are provided.

  • If the Content-Language header is set to *, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages.
  • If the Content-Language header is set to a specific language, then the localized fields should be provided as a map of single translation, where the key is a language code and the value is in a respective language.
  • If the Content-Language header is empty, then the localized fields should be provided as maps of single translation, where the key is a language code and the value is in a respective language. The endpoint will asume that the localized fields are provided in the default language defined in the Configuration Service.

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.

Body
all ofOptional
and
and
Responses
201
The request was successful. The price list has been created.
application/json
post
POST /price/{tenant}/price-lists HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 238

{
  "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"
}

Retrieving a price list

get

Retrieves a specified price list's details by priceListId.

Required scopes

  • price.pricelist_read

Authorizations
Path parameters
tenantstring · min: 3 · max: 16Required

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Pattern: ^[a-z][a-z0-9]+$
priceListIdstringRequired

Price list's unique identifier, generated when the price list is created.

Header parameters
Accept-LanguagestringOptional

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.

  • If the header is set to a particular language or a list of languages, all localized fields are retrieved as a map of single translation, where the key is a language code and the value is in a respective language.
  • If the header is set to *, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages.
  • If the header is empty, localized fields are retrieved as maps of single translation, where the key is a language code and the value is in a respective language. The endpoint will asume that the localized fields are provided in the default language defined in the Configuration Service.
Responses
200
The request was successful. The price list is returned.
application/json
Responseall of
and
and
get
GET /price/{tenant}/price-lists/{priceListId} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
  "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"
  }
}

Upserting a price list

put

Updates a specified price list by priceListId, or creates a new one if a price list with the specified id doesn't exist yet.

Required scopes

  • price.pricelist_manage

Authorizations
Path parameters
tenantstring · min: 3 · max: 16Required

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Pattern: ^[a-z][a-z0-9]+$
priceListIdstringRequired

Price list's unique identifier, generated when the price list is created.

Header parameters
Content-LanguagestringOptional

List of languages in which localized fields in the request body are provided.

  • If the Content-Language header is set to *, the localized fields should be provided as maps of translations, where the keys are language codes and values are the fields in their respective languages.
  • If the Content-Language header is set to a specific language, then the localized fields should be provided as a map of single translation, where the key is a language code and the value is in a respective language.
  • If the Content-Language header is empty, then the localized fields should be provided as maps of single translation, where the key is a language code and the value is in a respective language. The endpoint will asume that the localized fields are provided in the default language defined in the Configuration Service.

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.

Body
all ofOptional
and
and
and
Responses
201
The resource has been created.
application/json
put
PUT /price/{tenant}/price-lists/{priceListId} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 244

{
  "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
  }
}
{
  "id": "12345678-1234-1234-1234-123456789012"
}

Deleting a price list

delete

Deletes a specified price list by priceListId.

Important: All prices assigned to the price list will be deleted as well, in an asynchronous manner.

Required scopes

  • price.pricelist_manage

Authorizations
Path parameters
tenantstring · min: 3 · max: 16Required

Your Emporix tenant's name.

Note: The tenant should always be written in lowercase.

Pattern: ^[a-z][a-z0-9]+$
priceListIdstringRequired

Price list's unique identifier, generated when the price list is created.

Responses
204
The request was successful. The price list has been deleted.
delete
DELETE /price/{tenant}/price-lists/{priceListId} HTTP/1.1
Host: api.emporix.io
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*

No content

Was this helpful?