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

List Data Manager Entities

Request

Retrieves Data Manager Entities (Field Collections), including object's metadata. A filter can be applied.

ActionEndpoint
List Data Feeds/datamart.getfcs/DMF
List Data Sources/datamart.getfcs/DMDS
List Datamarts/datamart.getfcs/DM
List Datamart Model Tables/datamart.getfcs/DMT
List Data LoadsUse a different endpoint to retrieve Data Loads: /datamart.getdataloads
Security
basic or X-PriceFx-jwt
Path
TypeCodestringrequired

The type code of the Field Collection.

Enum"DM""DMDS""DMF""DMT"
Example: DM
Bodyapplication/json
dataobject
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getfcs/DM \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "_constructor": "AdvancedCriteria",
      "operator": "and",
      "criteria": [
        {
          "fieldName": "lastUpdateBy",
          "operator": "equals",
          "value": "2147490696"
        }
      ]
    }
  }'

Responses

Example response

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "node", "csrfToken": "tkn", "data": [], "endRow": 1, "status": 0 } }

Execute a Data Load Logic

Request

Executes the logic in the DMDataLoad context and returns the parameter definitions or test results.

Security
basic or X-PriceFx-jwt
Path
typedIdstringrequired

The typedId of the Data Load you want to evaluate.

Example: 2147483780.DMDL
logicNamestringrequired

The name of the logic you want to execute.

Example: E2ETestsLogic
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.distcalcparams/2147483780.DMDL/E2ETestsLogic

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "string", "csrfToken": "string", "data": [] } }

Get a DM Object

Request

Retrieves the object's (Data Feed, Data Source, Datamart) row level data. A filter can be applied.

If you want to achieve better performance when fetching large data sets and if you do not need the total number of items in the table – use the /datamart.fetchnocount/{typedId} endpoint instead.

You can choose fields to be returned in the response by employing the resultFields or valueFields filter:

resultFields: returns key-value pairs as objects. This is the more friendly response compared to valueFields but the server fetches all fields from the database in the backend which might result in a slower performance. See the List Product's listProductsResponseExample_resultFields response example.

valueFields: returns just an array of values. Use this option if a better performance is required. See the List Product's listProductsResponseExample_valueFields response example.

When distinctResults is set to true, it applies only to the first column specified in the valueFields array. For example, if "valueFields": ["ConditionType", "TableNumber"] is used, only distinct values for ConditionType are returned.

Please note: When paging is applied, use a deterministic sort (for example, "sortBy":["InvoiceLineID"]). If no sorting is defined when paging, you may get duplicates in the response.

Security
basic or X-PriceFx-jwt
Path
objectIdstringrequired

Use one of the following object identifiers:

  • typedUniquename – Format: "<typeCode>.<uniqueName>" (e.g., DMDS.SalesTransactions)
  • typedId – Format: "<dbId>.<typeCode>" (e.g., 123456.DMDS)'
  • "*" (asterisk) – Asterisk can be used when you are providing a source$query in data within the request body
Example: 123456.DMDS || DMDS.Transactions || DM.TxDM || *
Query
timeoutstring

Set this parameter to override the default timeout (60 seconds) of the query. The maximum allowed timeout is 300 seconds. The default timeout value and the maximum timeout value can be configured in the backend. Setting higher timeout can be useful, for example, when a query takes long time (e.g., when processing large tables).

Default "60"
Example: timeout=20
Bodyapplication/json
endRownumber
oldValuesany
operationTypestringnon-empty
startRownumber
textMatchStylestringnon-empty
dataobject
sortByArray of strings
resultFieldsArray of strings

The list of fields you want to return.

valueFieldsArray of any
distinctResultsboolean

set to true to return only unique values.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.fetch/123456.DMDS  || DMDS.Transactions || DM.TxDM || *?timeout=20' \
  -H 'Content-Type: application/json' \
  -d '{
    "endRow": 300,
    "oldValues": null,
    "operationType": "fetch",
    "startRow": 0,
    "textMatchStyle": "exact",
    "data": {
      "_constructor": "AdvancedCriteria",
      "operator": "and",
      "criteria": [
        {
          "fieldName": "currency",
          "operator": "iEquals",
          "value": "EUR"
        }
      ]
    },
    "sortBy": [
      "InvoiceLineID"
    ],
    "resultFields": [
      "ProductID",
      "label",
      "unitOfMeasure",
      "currency",
      "formulaName",
      "lastUpdateDate"
    ]
  }'

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "string", "startRow": 0, "data": [], "endRow": 0, "totalRows": 0, "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