The pricing API can be accessed at‚Äč

An optional URL parameter can be attached to get either the stored original prices or only AristanderAI prices:

One parameter is required: 'format', however this value must be set to 'csv' for large numbers of products (greater than 10).

The API will return a gzipped, headered, UTF-8 encoded CSV containing two columns: product_id, price

Additionally, the API will return three header values:

  • price_mode - this value is to be set by your system to either 'split', 'timeseries', or 'fixed'

  • pricelist_source - will be set to 'original', or 'aristander' - indicates where the pricelist came from

  • model_params - a string that is used internally for tracking model performance

It is vital that the pricelist_source parameter is tied to the returned prices. For example, if you call the /prices API - as soon as you update your system to reflect the recommended prices, all pricelist_source parameters should be set to the newly returned one in new events.

If you are doing split testing, then each event should have the pricelist_source parameter match the pricelist that the user was assigned.

An example curl call demonstrating this:

curl --header "Content-Type: application/json"
-d '{
"format" : "csv"
-u demo:

The format parameter determines the return type. The available options are: "json" and "csv".

Example JSON response:

"prices" : {
"product_id1" : 10.47,
"product_id2" : 10.30,
"product_id3" : 5.00,
"product_id4" : 1.00

Example CSV response:


We recommend the price API is called once per hour.

General Workflow (time series)

  1. Call /prices and receive a CSV of prices + a price mode and pricelist_source variables.

  2. Update our prices while simultaneously updating all of our events to use the new price mode + pricelist_source variables.

  3. Wait 1 hour

  4. Repeat

General Workflow (split test)

  1. Call /prices?source=aristander and receive a CSV of AristanderAI prices

  2. Update your internal system with our Aristander prices

  3. Wait 1 hour

  4. Repeat

Alternatively, if you want to use our system as the ground truth for all prices, call both /prices?source=aristander and /prices?source=original to get both AristanderAI prices as well as the prices stored in the default price column for your settings (see pricing configuration).