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

Upsert a Customer Extension

Request

Updates or creates a customer extension.

To add a new customer extension that does not exist, specify the customerId and name parameter in the request.

To update an existing customer extension, specify the name and customerId or typedId parameters of the existing customer extension. The /integrate method performs a partial update – it does not delete values from fields that have not been specified in the update request.

Use the /integrate/{TypeCode}/returnolddata endpoint to return also the data of the previous version in the response.


Please note

This method is intended to be used with one or two objects and it allows you to update particular fields. The request will overwrite the existing data of the record being updated, regardless of other changes. To work with more customers in bulk please use the /loaddata/C endpoint.


This operation is particularly useful if the caller does not (and should not) know about typed IDs and other internal data fields, i.e. typically in an integration scenario.

The only mandatory pre-requisite for this operation is that the object's defined business key fields (vary per object type) are present in every request. No typed ID or version fields are required. This also means that no version checking is performed, thus the request will overwrite existing data of that record, regardless of other changes.


Information

You can upsert multiple records using within request. To do so, add multiple data objects into your JSON. See the batchUpsertCustomerExample example.


Security
basic or X-PriceFx-jwt
Bodyapplication/json

Please note: The data sent in your request might be different from our sample request schema. Custom fields (attribute1..attribute30) can be retrieved using the /fetch/CXAM operation.

dataobjectrequired
data.​namestringnon-emptyrequired
data.​customerIdstringnon-emptyrequired
data.​attribute1stringnon-empty
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/integrate/CX \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "name": "Customer001",
      "customerId": "c00001",
      "attribute1": "High Street 333, London"
    }
  }'

Responses

OK

Bodyapplication/json
responseobjectrequired
response.​nodestringnon-emptyrequired
response.​csrfTokenstringnon-emptyrequired
response.​dataArray of objectsnon-emptyuniquerequired
response.​data[].​versionnumberrequired
response.​data[].​typedIdstringnon-emptyrequired
response.​data[].​namestringnon-emptyrequired
response.​data[].​customerIdstringnon-emptyrequired
response.​data[].​createDatestringnon-emptyrequired
response.​data[].​createdBynumberrequired
response.​data[].​lastUpdateDatestringnon-emptyrequired
response.​data[].​lastUpdateBynumberrequired
response.​data[].​attribute1stringnon-emptyrequired
response.​data[].​attribute2any
response.​data[].​attribute3any
response.​statusnumberrequired
Response
application/json
{ "response": { "node": "<node>", "csrfToken": "<token>", "data": [], "status": 0 } }

Delete a Customer Extension

Request

Deletes a customer extension.

Only one object can be deleted per request (unless batched). Some object types may be blocked from being deleted by the update command as special processing is done by a dedicated manager command.

Note: Some object types are only soft-deleted, some are hard-deleted in the database. This behavior cannot be influenced by the client.

Security
basic or X-PriceFx-jwt
Bodyapplication/json
dataobjectrequired
data.​typedIdstringnon-emptyrequired
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/delete/CX \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "typedId": "9051.CX3"
    }
  }'

Responses

OK

Bodyapplication/json
responseobjectrequired
response.​nodestringnon-emptyrequired
response.​dataArray of objectsnon-emptyuniquerequired
response.​data[].​versionnumberrequired
response.​data[].​typedIdstringnon-emptyrequired
response.​data[].​namestringnon-emptyrequired
response.​data[].​customerIdstringnon-emptyrequired
response.​data[].​createDatestringnon-emptyrequired
response.​data[].​createdBynumberrequired
response.​data[].​lastUpdateDatestringnon-emptyrequired
response.​data[].​lastUpdateBynumberrequired
response.​data[].​attribute1any
response.​data[].​attribute2any
response.​data[].​attribute3any
response.​statusnumberrequired
Response
application/json
{ "response": { "node": "<node>", "data": [], "status": 0 } }

List Customer Extension Objects

Request

Retrieves records from the Customer Extensions table.

Export the table to the Excel file (XLSX), CSV, or JSON using the output URL query parameter. When exporting to the file, specify fields (within the resultFields property) you want to include in the output table.

Example request body for the export action:

{
   "data":{
      "criteria":[

      ],
      "operator":"and"
   },
   "resultFields":[
      "customerId",
      "lastUpdateDate",
      "attribute1"
   ],
   "valueFields":[

   ]
}

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 Customers' listCustomersResponseExample_resultFields response example.

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

Security
basic or X-PriceFx-jwt
Path
CustomerMasterExtensionNamestringrequired

Enter the name of Customer Extension you want to retrieve objects from. You can find the name in Administration > Configuration > Master Data > Customer Master Extension or using the /configurationmanager.get/customerextension endpoint.

Query
outputstring

Specifies the format of the output file.

Enum"json""xls""csv""pdf"
Example: output=xls
useColumnNamesstring

Set to false to retrieve the table with labels (as used in the database) instead of names in the table header.

Default "true"
Enum"true""false"
Example: useColumnNames=false
Bodyapplication/json
endRownumber
oldValuesany
operationTypestringnon-empty
startRownumber
textMatchStylestringnon-empty
dataobject
sortByArray of objects
curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/customermanager.fetch/*/CX/{CustomerMasterExtensionName}?output=xls&useColumnNames=false' \
  -H 'Content-Type: application/json' \
  -d '{
    "endRow": 0,
    "oldValues": null,
    "operationType": "string",
    "startRow": 0,
    "textMatchStyle": "string",
    "data": {
      "_constructor": "string",
      "operator": "string",
      "criteria": [
        {
          "fieldName": "string",
          "operator": "string",
          "value": "string"
        }
      ]
    },
    "sortBy": [
      {}
    ]
  }'

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "pricefx-cluster-app-frontend-cb48f6447-qncxw", "data": [], "endRow": 7, "totalRows": 7, "status": 0 } }

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

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