Document toolboxDocument toolbox

Price List REST API

3.30.0

The Price List REST API is used to manage product pricing. Price List is used to override the default catalog pricing. Price List is then associated with multiple service areas. In order to calculate the base price of a product, the pricing engine first looks for an account specific price then a tier specific price and finally price list and default catalog pricing. 

  • In order to conserve space, and reduce network bandwidth time/cost only those products who's price needs to be changed from the default catalog price should be added to the price list. 

On this page:

Related pages:

Resource URL Summary

Retrieve the details of a specific Price List

GET   /seiapi/v3/PriceList/${PriceListID}  

Retrieve the price for a product from a specific Price List

GET   /seiapi/v3/PriceList/${PriceListID}/Price /${ProductNum}

Retrieve all Service Areas associated with a specific Price List 

GET /seiapi/v3/PriceList/{PriceListID}/ServiceAreas

Insert or Update the details for a specific Price List

PUT /seiapi/v3/PriceList/${PriceListID}

Insert or Update the Service Areas associated with a specific Price List

PUT /seiapi/v3/PriceList/${PriceListID}/ServiceAreas

Delete a specific Price List

DELETE /seiapi/v3/PriceList/${PriceListID}

Copy the details of a specific Price List

PUT /seiapi/v3/PriceList/${PriceListID}/copy/${TargetPriceListID}

API Specific Parameters

ParameterDescription

${PriceListID}

Identifies the unique Price List object.
${ProductNum}Identifies the product number.
${TargetPriceListID}Identifies the unique target Price List object.

HTTP Headers

This API uses the default ServiceMobility HTTP Headers.



API Specifics

Retrieve the details of a specific Price List

URL

GET /seiapi/v3/PriceList/${PriceListID}

HTTP Request Body

This request does not require a request body. 

HTTP Response

On success the HTTP response code will be 200 and the response body will contain a valid Price List Object

If the price list does not have any pricing defined an HTTP response code of 404 (not found) will be returned.

Retrieve the price for a product from a specific Price List

URL

GET /seiapi/v3/PriceList/${PriceListID}/Price/${ProductNum}

HTTP Request Body

This request does not require a request body. 

HTTP Response

On success the HTTP response code will be 200 and the response body will contain a valid object with a price. 

If the price list does not have any pricing defined an HTTP response code of 404 (not found) will be returned.


Retrieve the Service Areas for a specific Price List

URL

GET /seiapi/v3/PriceList/{PriceListID}/ServiceAreas

HTTP Request Body

This request does not require a request body. 

HTTP Response

On success the HTTP response code will be 200 and the response body will contain a collection of ServiceAreaIDs

If the price list has no associated Service Areas defined, the response will include an empty collection of ServiceAreaIDs.



Insert or Update the details for a specific Price List

This request is always an update, not a full replace. Therefore, new items will be added to the price list while existing items in the PUT request will be updated with the new price. If an item in the PUT request has the  Delete property set to  true , then that item will be removed from the price list. 

URL

PUT /seiapi/v3/PriceList/${PriceListID}

HTTP Request

The request body contains a single Price List Object

JSON Format
 {
 	"ISOCurrencySymbol": "",
 	"Name": "",
 	"PriceListID": "",
 	"Prices": {
 		"{$ProdNum}": {
 			"Price": 0.0,
 			"Delete": false
 		}
 	}
 }

HTTP Response 

On success the API will return a response code of 200.



Insert or Update the Service Areas for a specific Price List

This request is a full replace.

URL

PUT /seiapi/v3/PriceList/${PriceListID}/ServiceAreas

HTTP Request

The request body contains a collection of ServiceAreaIDs

JSON Format
 {
 	"ServiceAreas": [{
     	// A collection of ServiceAreaIDs
     }]
}

HTTP Response 

On success the API will return a response code of 200. Otherwise, on error, the response body will contain a descriptive reason for the error.


Delete a specific Price List

URL

URL

DELETE /seiapi/v3/PriceList/${PriceListID}

HTTP Request Body

This request does not require a request body. 

HTTP Response

On success the HTTP response code will be 200. 

If you try and delete price list when there currently is not any setup then an HTTP response code of 404 (not found) will be returned. 

Copy the details of a specific Price List

This request will copy the details of source price list into the target price list. The target price list with specified ID must not exist in the system. Copy Price List object contains price adjustments and override definition for items in target price list. If an item in the PriceOverride property has the  Delete property set to  true, then that item will be removed from the price list. 

  • PriceAdjustments or PriceOverride property must be present in the request.
  • The system will apply price adjustments first, which will followed by price override for each item.
  • PriceListID for master price list is "MasterPriceList". This ID is reserved for system use.

URL

PUT /seiapi/v3/PriceList/${PriceListID}/copy/${TargetPriceListID}

HTTP Request

The request body contains a single Copy Price List Object

JSON Format
 {
	"ISOCurrencySymbol": "USD",
	"Name": "",
	"PriceAdjustments": [{
		"ProdType": "",
		"Operator": "",
		"Value": 10
	}],
	"PriceListID": "",
	"PriceOverride": {
		"{$ProdNum}": {
			"Price": 133
		}
	}
}

HTTP Response 

On success the API will return a response code of 200.