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

Update an Object (and return old data)

Request

Updates an existing object and returns details of the previous version. Updates specified fields (in the data property) of the record. Only one record can be updated per request (unless batched).

Security
basic or X-PriceFx-jwt
Path
TypeCodestringrequired

The object's type code. See the list of Type Codes.

Bodyapplication/json

Please note: The update request should contain all old values in the oldValues property (especially the typedId and the version) and all values (along the typedId) you want to update in the data property.

Apart from the version checks, additional integrity checks are performed. E.g. if fields that are part of the business key are changed then it is checked that no other object already is defined with those key(s).

dataobjectrequired

Enter new field values. Multiple values can be updated. In our example the unitOfMeasure and label properties were updated.

data.​unitOfMeasurestring[ 1 .. 255 ] characters
data.​typedIdstringnon-emptyrequired
data.​labelstring[ 1 .. 255 ] characters
oldValuesobjectrequired

Values of the object before the update. Especially important are typedId (to identify the object to update) and version (to detect date inconsistencies).

oldValues.​versionnumberrequired
oldValues.​typedIdstringnon-emptyrequired
oldValues.​skustring[ 1 .. 255 ] characters
oldValues.​labelstring[ 1 .. 255 ] characters
oldValues.​unitOfMeasurestring[ 1 .. 255 ] characters
oldValues.​userGroupEditstring or null[ 1 .. 255 ] characters
oldValues.​userGroupViewDetailsstring or null[ 1 .. 255 ] characters
oldValues.​currencystring[ 1 .. 255 ] characters
oldValues.​formulaNameany
oldValues.​imageany
oldValues.​createDatestringnon-empty
oldValues.​createdBynumber
oldValues.​lastUpdateDatestringnon-empty
oldValues.​lastUpdateBynumber
oldValues.​attribute1any
oldValues.​attribute2any
oldValues.​attribute3any
oldValues.​attribute4any
oldValues.​attribute5any
oldValues.​attribute6any
oldValues.​attribute7any
oldValues.​attribute8any
oldValues.​attribute9any
oldValues.​attribute10any
oldValues.​attribute11any
oldValues.​attribute12any
oldValues.​attribute13any
oldValues.​attribute14any
oldValues.​attribute15any
oldValues.​attribute16any
oldValues.​attribute17any
oldValues.​attribute18any
oldValues.​attribute19any
oldValues.​attribute20any
oldValues.​attribute21any
oldValues.​attribute22any
oldValues.​attribute23any
oldValues.​attribute24any
oldValues.​attribute25any
oldValues.​attribute26any
oldValues.​attribute27any
oldValues.​attribute28any
oldValues.​attribute29any
oldValues.​attribute30any
operationTypestringnon-empty

Must be 'update' or null or omitted.

textMatchStylestringnon-empty
noEventstring

Set to true when this operation should NOT trigger an update event (where applicable).

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/update/{TypeCode}/returnolddata' \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "currency": "EUR",
      "typedId": "2147501222.P"
    },
    "oldValues": {
      "version": 5,
      "typedId": "2147501222.P",
      "sku": "33333",
      "label": "Label Three",
      "unitOfMeasure": "EA",
      "userGroupEdit": "admin",
      "userGroupViewDetails": null,
      "currency": "CZK",
      "formulaName": "PriceList",
      "image": null,
      "createDate": "2021-09-16T09:43:59",
      "createdBy": 2147490696,
      "lastUpdateDate": "2021-11-04T18:33:16",
      "lastUpdateBy": 2147490696,
      "attribute1": "56",
      "attribute2": "3rd",
      "attribute3": 4,
      "attribute4": null,
      "attribute5": null,
      "attribute6": null,
      "attribute7": null,
      "attribute8": null,
      "attribute9": null,
      "attribute10": null,
      "attribute11": null,
      "attribute12": null,
      "attribute13": null,
      "attribute14": null,
      "attribute15": null,
      "attribute16": null,
      "attribute17": null,
      "attribute18": null,
      "attribute19": null,
      "attribute20": null,
      "attribute21": null,
      "attribute22": null,
      "attribute23": null,
      "attribute24": null,
      "attribute25": null,
      "attribute26": null,
      "attribute27": null,
      "attribute28": null,
      "attribute29": null,
      "attribute30": null
    },
    "operationType": "update",
    "textMatchStyle": "exact"
  }'

Responses

OK - contains the updated object and details of the previous version.

Update an Object

Request

Updates an existing object.
Specify fields you want to update in the data property. Only one record can be updated per request (unless batched).

Security
basic or X-PriceFx-jwt
Path
TypeCodestringrequired

The object's type code. See the list of Type Codes.

Bodyapplication/json

Please note: The update request should contain all old values in the oldValues property (especially the typedId and the version) and all values (along the typedId) you want to update in the data property.

Apart from the version checks, additional integrity checks are performed. E.g. if fields that are part of the business key are changed then it is checked that no other object already is defined with those key(s).

dataobjectrequired

Enter new field values. Multiple values can be updated. In our example the unitOfMeasure and label properties were updated.

data.​unitOfMeasurestring[ 1 .. 255 ] characters
data.​typedIdstringnon-emptyrequired
data.​labelstring[ 1 .. 255 ] characters
oldValuesobjectrequired

Values of the object before the update. Especially important are typedId (to identify the object to update) and version (to detect date inconsistencies).

oldValues.​versionnumberrequired
oldValues.​typedIdstringnon-emptyrequired
oldValues.​skustring[ 1 .. 255 ] characters
oldValues.​labelstring[ 1 .. 255 ] characters
oldValues.​unitOfMeasurestring[ 1 .. 255 ] characters
oldValues.​userGroupEditstring or null[ 1 .. 255 ] characters
oldValues.​userGroupViewDetailsstring or null[ 1 .. 255 ] characters
oldValues.​currencystring[ 1 .. 255 ] characters
oldValues.​formulaNameany
oldValues.​imageany
oldValues.​createDatestringnon-empty
oldValues.​createdBynumber
oldValues.​lastUpdateDatestringnon-empty
oldValues.​lastUpdateBynumber
oldValues.​attribute1any
oldValues.​attribute2any
oldValues.​attribute3any
oldValues.​attribute4any
oldValues.​attribute5any
oldValues.​attribute6any
oldValues.​attribute7any
oldValues.​attribute8any
oldValues.​attribute9any
oldValues.​attribute10any
oldValues.​attribute11any
oldValues.​attribute12any
oldValues.​attribute13any
oldValues.​attribute14any
oldValues.​attribute15any
oldValues.​attribute16any
oldValues.​attribute17any
oldValues.​attribute18any
oldValues.​attribute19any
oldValues.​attribute20any
oldValues.​attribute21any
oldValues.​attribute22any
oldValues.​attribute23any
oldValues.​attribute24any
oldValues.​attribute25any
oldValues.​attribute26any
oldValues.​attribute27any
oldValues.​attribute28any
oldValues.​attribute29any
oldValues.​attribute30any
operationTypestringnon-empty

Must be 'update' or null or omitted.

textMatchStylestringnon-empty
noEventstring

Set to true when this operation should NOT trigger an update event (where applicable).

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/update/{TypeCode}' \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "unitOfMeasure": "EA",
      "typedId": "2147501222.P"
    },
    "oldValues": {
      "version": 5,
      "typedId": "2147501222.P",
      "sku": "33333",
      "label": "Label Three",
      "unitOfMeasure": "EA",
      "userGroupEdit": "admin",
      "userGroupViewDetails": null,
      "currency": "CZK",
      "formulaName": "PriceList",
      "image": null,
      "createDate": "2021-09-16T09:43:59",
      "createdBy": 2147490696,
      "lastUpdateDate": "2021-11-04T18:33:16",
      "lastUpdateBy": 2147490696,
      "attribute1": "56",
      "attribute2": "3rd",
      "attribute3": 4,
      "attribute4": null,
      "attribute5": null,
      "attribute6": null,
      "attribute7": null,
      "attribute8": null,
      "attribute9": null,
      "attribute10": null,
      "attribute11": null,
      "attribute12": null,
      "attribute13": null,
      "attribute14": null,
      "attribute15": null,
      "attribute16": null,
      "attribute17": null,
      "attribute18": null,
      "attribute19": null,
      "attribute20": null,
      "attribute21": null,
      "attribute22": null,
      "attribute23": null,
      "attribute24": null,
      "attribute25": null,
      "attribute26": null,
      "attribute27": null,
      "attribute28": null,
      "attribute29": null,
      "attribute30": null
    },
    "operationType": "update",
    "textMatchStyle": "exact"
  }'

Responses

OK - contains the updated object.

Delete an Object

Request

Deletes an object.

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
Path
TypeCodestringrequired

Enter the type code of the entity you want to delete the object from. See the list of Type Codes in the Pricefx Knowledge Base article.

Enum"ACTT""AP""APIK""BD""BPT""BR""C""CA""CAM""CDESC"
Example: P
Bodyapplication/json
dataobjectrequired
data.​typedIdstringnon-emptyrequired
curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/delete/P \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "typedId": "2147501187.P"
    }
  }'

Responses

OK

Bodyapplication/json
responseobjectrequired
response.​nodestringnon-emptyrequired
response.​dataArray of objectsnon-emptyuniquerequired
response.​data[].​versionnumberrequired
response.​data[].​typedIdstringnon-emptyrequired
response.​data[].​skustringnon-emptyrequired
response.​data[].​labelstringnon-emptyrequired
response.​data[].​unitOfMeasurestringnon-emptyrequired
response.​data[].​userGroupEditstringnon-emptyrequired
response.​data[].​userGroupViewDetailsstringnon-emptyrequired
response.​data[].​currencystringnon-emptyrequired
response.​data[].​formulaNamestringnon-emptyrequired
response.​data[].​imagebooleanrequired
response.​data[].​createDatestringnon-emptyrequired
response.​data[].​createdBynumberrequired
response.​data[].​lastUpdateDatestringnon-emptyrequired
response.​data[].​lastUpdateBynumberrequired
response.​data[].​attribute1stringnon-emptyrequired
response.​data[].​attribute2stringnon-emptyrequired
response.​data[].​attribute3any
response.​data[].​attribute4any
response.​data[].​attribute5any
response.​data[].​attribute6any
response.​data[].​attribute7any
response.​data[].​attribute8any
response.​data[].​attribute9any
response.​data[].​attribute10any
response.​data[].​attribute11any
response.​data[].​attribute12any
response.​data[].​attribute13any
response.​data[].​attribute14any
response.​data[].​attribute15any
response.​data[].​attribute16any
response.​data[].​attribute17any
response.​data[].​attribute18any
response.​data[].​attribute19any
response.​data[].​attribute20any
response.​data[].​attribute21any
response.​data[].​attribute22any
response.​data[].​attribute23any
response.​data[].​attribute24any
response.​data[].​attribute25any
response.​data[].​attribute26any
response.​data[].​attribute27any
response.​data[].​attribute28any
response.​data[].​attribute29any
response.​data[].​attribute30any
response.​statusnumberrequired
Response
application/json
{ "response": { "node": "string", "data": [], "status": 0 } }

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

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