Skip to content

The Pricefx Backend API

Pricefx REST API Reference

Languages
Servers
Mock server
https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi
URL:
https://{baseUrl}/pricefx/{partition}

General

Operations

Products

Operations

Product Extensions

Operations

Product Image

Operations

Customers

Operations

Customer Extensions

Operations

Sellers

Operations

Seller Extensions

Operations

Condition Records

Operations

Competition Data

Operations

Imports

Operations

Data Change Requests

Operations

Lookup Tables / Company Parameters

Operations

User Admin

Operations

Authentication

Operations

Admin Tools

Operations

Logics

Operations

Logs

Operations

Custom Forms

Operations

Calculated Field Sets

Operations

Jobs & Tasks

Operations

Data Manager

Operations

Import a File

Request

Uploads a file to the Data Manager (specified by typeId in the path parameter).

To import data into FieldCollection (DMT or DMDS), use the datamart.loadfc/{typedId} endpoint.

Follow these steps to upload a file:

  1. Create an upload slot and retrieve the slotId using the /uploadmanager.newuploadslot endpoint (see Product Image > 1. Create an Upload Slot).
  2. Upload the file using the /datamart.importfile/{slotId}/{typedId} endpoint.

When importing a CSV file, it is possible to include more information than just a column name.
Example:

columName1:NUMBER:KEY,columnName2:TEXT:DIM,columnName3:NUMBER
a,1,0.5
b,1,0.6
c,2,1.2
d,3,2.0

In the example above you can see that columnName1 column should be the NUMBER field type and also the key (KEY).
The columnName2 column should be the TEXT type and a dimension (DIM).
The columnName3 column should be a NUMBER.
Possible field types: BOOLEAN, CURRENCY, DATE, DATETIME, INTEGER, LOB, MONEY, NUMBER, QUANTITY, TEXT, UOM

Information: When using datamart.importfile to upload a file with huge numbers (20+ significant decimal digits) it is recommended to use the Avro format. In CSV and XLSX files, you can use numbers within the double type or long type ranges.

Security
basic or X-PriceFx-jwt
Path
slotIdstringrequired

The id of the slot. Create the slot and retrieve the id using the /uploadmanager.newuploadslot endpoint.

typedIdstringrequired

The typedId of the Data Manager entity.

Example: 2147483847.DMDS
curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.importfile/{slotId}/2147483847.DMDS'

Responses

OK

Create a DMFieldCollection

Request

Creates a DMFieldCollection from a multipart/form-data body containing the schema (JSON – the DMFieldCollection DTO) as a first part and the data (AVRO format) as second part. Fails if the specified DMFieldCollection already exists.

The first part contains information about the schema of the Field Collenction to be created:

  • for DMDataSource
    • uniqueName
    • label*
    • fields
  • for DMT
    • name
    • label
    • fields*
    • owner – the ModeObject typedId that owns the table. * fields is a list of the DMFields specification.

The second part contains the table data in the AVRO format. The data schema must comply with the one given in the first part.

An existing table will be overriden (deletes an existing one, creates a new one).

This is an endpoint dedicated for remote services (such as Optimization Engine or Python Engine). It is very strict by design in order to ensure that the uploaded data ends up exactly in the same format in the platform.

Security
basic or X-PriceFx-jwt
Path
fcTypestringrequired

The type of FC (FieldCollection) you want to create.

Enum"DMDS""DMT"
Example: DMDS
Bodymultipart/form-data
fileNameArray of anyrequired

Two files are required – the schema in the JSON format and the data in the AVRO format.

curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.createfc/DMDS \
  -H 'Content-Type: multipart/form-data'

Responses

OK

List Datamart Orphan Objects

Request

Returns a list of orphan Datamart objects. Identifies and returns details about objects considered obsolete. Objects such as:

  • Datamart Tables with missing owners.
  • Data Loads for which the target Field Cache was deleted.
  • Analytics (PriceAnalyzer) tables without a matching deployed Field Cache (FC).

By default this endpoint works in the dry run mode to mitigate accidental deletions. Actual deletions require adding explicit /delete in the endpoint URL.

Security
basic or X-PriceFx-jwt
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.deleteobsoletes

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "data": [], "status": 0 } }

Actions

Operations

Action Types

Operations

Price Lists

Operations

Manual Price Lists

Operations

Live Price Grids

Operations

Calculation Grids

Operations

Visual Configuration

Operations

Quotes

Operations

Contracts (Agreements & Promotions)

Operations

Visual Configuration

Operations

Rebate Agreements

Operations

Rebate Calculations

Operations

Rebate Record Group

Operations

Sales Compensations

Operations

Claim Types

Operations

Claims

Operations

Optimization

Operations

Workflow

Operations

Workflow Delegation

Operations

Attachments

To upload a file you need to perform the following actions using endpoints in this category:

  1. Create an Upload Slot
  2. Upload a File
  3. Delete an Upload Slot
Operations

Product Image

Operations

Configuration

Operations

Internationalization

Operations

Metadata

Operations

Clicmanager

Clicmanager (CLIC = "Calculable Line Item Collection") endpoints are used in the REACT version to manipulate Quote/Agreements & Promotions (Contract)/Rebate Agreement/Compensation Plan objects.

Operations

Comments

Operations

Notifications

Operations

Heartbeat

Operations

Key-Value Store

See the Key-Value Database Storage Knowledge Base article for more details.

Operations

Entities

Here you can find all fields of the corresponding entity (represented by the type code).
Use the /metadata.describe endpoint to find out the correct data type of the field that is used in your partition.

otherSchemas

Schemas