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 Functions

Request

Retrieves a list of functions in an active Groovy library.

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

Responses

OK

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

Test a Logic

Request

Executes a draft logic for a given approvable and calculates the result. This command is used to test a logic during editing (the "Test Logic" button in IntelliJ Pricefx Studio).

The backend will compile and execute the test logic (specified in the testFormula property) without persisting it in the database.

Security
basic or X-PriceFx-jwt
Bodyapplication/json
dataobjectrequired
data.​targetDatestringnon-empty
data.​testFormulaobject(Formula)required

The Formula object. The type code is F.

data.​testFormula.​lastUpdateByNamestring<= 255 characters
data.​testFormula.​createdByNamestring
data.​testFormula.​typedIdstring
data.​testFormula.​lastUpdateDatestring(date-time)
data.​testFormula.​labelstring<= 255 characters
data.​testFormula.​formulaNaturestring<= 255 characters
data.​testFormula.​versioninteger
data.​testFormula.​simulationSetstring<= 255 characters
data.​testFormula.​uniqueNamestring<= 255 characters
data.​testFormula.​formulaTypestring
Enum"PRICING""WORKFLOW""LIBRARY"
data.​testFormula.​createdByinteger
data.​testFormula.​elementsArray of objects
data.​testFormula.​userGroupEditstring<= 255 characters
data.​testFormula.​userGroupViewDetailsstring<= 255 characters
data.​testFormula.​validAfterstring(date)
data.​testFormula.​inputDescriptorsArray of objects
data.​testFormula.​statusstring<= 255 characters
Enum"ACTIVE""SIMULATIONONLY""INACTIVE"
data.​testFormula.​createDatestring(date-time)
data.​testFormula.​lastUpdateByinteger
data.​knownElementsArray of strings
data.​productSKUstring
data.​itemstring
data.​itemsArray of strings
data.​naturestring
data.​natureValuestring
data.​headerPhasesobject
data.​formulaExpressionstring
data.​allResultsboolean
data.​typestring
data.​debugPortstring
data.​allowObjectModsboolean
data.​selectedRowsArray of strings
data.​formulaFilterParamstring
data.​forceLineRecalculationboolean

Used by PFX Studio for Header logics only.

curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/formulamanager.testexec \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "targetDate": "2021-12-10",
      "testFormula": {
        "elements": [
          {
            "allowOverride": false,
            "combinationType": "FUNCTION",
            "displayOptions": 16,
            "elementGroups": [],
            "elementName": "NewElement",
            "elementTimeout": 0,
            "hideOnNull": false,
            "hideWarnings": false,
            "protectedExpression": false,
            "summarize": false,
            "formulaExpression": "api.inputBuilderFactory()\n .createStringUserEntry(\"MyStringParameter\")\n .getInput()"
          }
        ],
        "status": "ACTIVE",
        "uniqueName": "MichalS",
        "validAfter": "2020-01-01",
        "__PROC": {
          "sourceId": "CalculationLogic/MichalS+2020-01-01",
          "typeCode": "F",
          "fsId": "CalculationLogic/MichalS+2020-01-01",
          "type": "CalculationLogic"
        }
      }
    }
  }'

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "pricefx-cluster-app-frontend-65c978b8dd-6wgk5", "data": [], "status": 0 } }

Execute Library Function

Request

Executes a specific function from a formula library element without requiring a full formula logic implementation.
Parameters are provided via the request payload and the calculated result is returned.

Note:

  • This endpoint does not work with inputs bindings. Provide ordered function arguments instead.
  • Used by the Pricefx MCP server to enable Groovy-configured MCP Tools.
  • Requires the PRICINGFORMULA_EXECUTE permission.
Security
basic or X-PriceFx-jwt
Path
formulaNamestringrequired

Name of the formula library containing the function.

elementNamestringrequired

Name of the library element containing the function.

functionNamestringrequired

Name of the function to execute.

Bodyapplication/json
dataobject
curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/formulamanager.executelibraryfunction/{formulaName}/{elementName}/{functionName}' \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "allowObjectMods": true,
      "functionArgs": [
        null
      ]
    }
  }'

Responses

OK

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