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

List Libraries

Request

Retrieves active Groovy libraries, including elements and functions.

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

Responses

OK

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

Execute a Logic (Without a Context)

Request

Executes a logic and returns results.

Use the output=rawjson parameter in the URL, for example /formulamanager.executeformula/QuoteLogic?output=rawjson in order to return the result in the simple JSON format as "resultName":result.

Security
basic or X-PriceFx-jwt
Path
uniqueNamestringrequired

The name (uniqueName) of the logic you want to execute.

Query
outputstring

Specifies the format of the output file.

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

Specifies the template to be used when exporting a file.

fileNamestring

Sets the name of the output file.

Bodyapplication/json
dataobject

Provide inputs for the logic as key-value pairs.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/formulamanager.executeformula/{uniqueName}?output=xls&templateName=string&fileName=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "priority": "high",
      "quantity": 14,
      "map": {
        "key": "value"
      }
    }
  }'

Responses

OK

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

Execute a Logic Without a Context in a Service

Request

Executes a logic and returns results.

The main difference between this command and the executeformula command is, that in this formulamanager.executeformulaservice command, the logic context is preserved and reused. This allows the formula to build and maintain a cache, as elements like api.global persist between calls.
Each thread operates with its own formula context and api.global instance. The system maintains a fixed number of service threads, with a predefined lifespan for each. Parallel API requests are queued and executed on these threads in sequence. If a request cannot be processed within a short timeframe, it will fail. For this reason, it is crucial that subsequent requests execute efficiently, leveraging caching whenever possible. Be aware that during long cache warm-up periods (e.g., when new threads are initialized), there is a higher risk of request failures.

Use the output=rawjson parameter in the URL, for example /formulamanager.executeformula/QuoteLogic?output=rawjson in order to return the result in the simple JSON format as "resultName":result.

Security
basic or X-PriceFx-jwt
Path
uniqueNamestringrequired

The name (uniqueName) of the logic you want to execute.

Bodyapplication/json
dataobject

Provide inputs for the logic as key-value pairs.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/formulamanager.executeformulaservice/{uniqueName}' \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "priority": "high",
      "quantity": 14,
      "map": {
        "key": "value"
      }
    }
  }'

Responses

Example response

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

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