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

Insert Bulk Data

Request

Inserts multiple records to the Master Data table.

The /loaddata operation is a very efficient and quick way to insert bulk data to the Master Data table. The main advantage is its greater speed when loading thousands of records (compared to e.g. /integrate).

Use the ISO 8601 date format (YYYY-MM-DD) if a date is included in the table.

See the list of bulk-loadable objects.

If used in a Groovy logic, it is recommended to use the api.addOrUpdate() method instead of this loaddata endpoint within the boundCall().
For more details see the Avoid api.boundCall article.

Please note If no joinFields are provided in the request, then this operation will insert entire records. It means that in this case (without joinFields) with /loaddata it is not possible to update just some fields (for this use the /integrate endpoint instead). The source data must always contain the entire row’s content.

Security
basic or X-PriceFx-jwt
Path
TypeCodestring(TypeCodeEnum)required

Specify the type code for the entity you want to work with. 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

The /loaddata/P endpoint (Insert Bulk Products) is used in our example.

Information: Field names (columns) sent in your request might be different from our sample request schema. Custom fields (attribute1..attribute30) can be retrieved using the /fetch/<entity>AM (AttributeMeta) endpoint, for example, use /fetch/RBTAM to retrieve Rebate Type attribute fields.

dataobjectrequired
data.​headerArray of anyrequired

Specify header field names (table columns) of the record in the target table.

data.​optionsobject

Specify options of the bulk data insertion.

data.​dataArray of anyrequired

Specify the field values in the same order as specified in the header object.

curl -i -X POST \
  -u <username>:<password> \
  https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata/P \
  -H 'Content-Type: application/json' \
  -d '{
    "data": {
      "header": [
        "sku",
        "label",
        "unitOfMeasure",
        "currency"
      ],
      "options": {
        "detectJoinFields": false,
        "joinFields": [
          "sku"
        ]
      },
      "data": [
        [
          11111,
          "Label One",
          "EA",
          "USD"
        ],
        [
          22222,
          "Label Two",
          "EA",
          "EUR"
        ],
        [
          33333,
          "Label Three",
          "EA",
          "CZK"
        ]
      ]
    }
  }'

Responses

Returns the number of inserted or updated objects.

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

Insert Bulk Data From a File

Request

Inserts multiple records to the Master Data table from the CSV file.

The /loaddata operation is a very efficient and quick way to insert bulk data to the Master Data table. The main advantage is its greater speed when loading thousands of records (compared to e.g. /integrate).

If used in a Groovy logic, it is recommended to use the api.addOrUpdate() method instead of this loaddata endpoint within the boundCall().
For more details see the Avoid api.boundCall article.

Please note If no joinFields are provided in the request, then this operation will insert entire records. It means that in this case (without joinFields) with /loaddata.file it is not possible to update just some fields (for this use the /integrate endpoint instead). The source data must always contain the entire row’s content.

Security
basic or X-PriceFx-jwt
Path
TypeCodestringrequired

Enter the type code of the entity you want to insert a data to. See the list of Type Codes in the Pricefx Knowledge Base article.

Enum"C""CDESC""CX""JLTV""LTV""MLTV""P""PBOME""PCOMP""PDESC"
Example: PX
Query
namestring

The name of the table you want to upload a file to.

Bodymultipart/form-data
fileNamestring(binary)required

Provide a file in the CSV format. The file must also contain the name column with the name(s) of the table (PX, CX, SX) you are inserting the records to.

joinFieldsstring

Specify fields that make up a Business key.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata.file/PX?name=string' \
  -H 'Content-Type: multipart/form-data' \
  -F fileName=string \
  -F joinFields=string

Responses

OK

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

Insert Bulk Data From a File (async)

Request

Creates a JST job (the LOADDATA_FILE type) for inserting multiple records to the Master Data table from a CSV file.

You can get the status of the job by calling the admin.fetchjst/{jstId} endpoint. The jstId can be found in the response of the /loaddata.file/{TypeCode}/async endpoint.
Allows parallel loaddata calls. You can also view the job in Administration > Logs > Jobs & Tasks.

The /loaddata operation is a very efficient and quick way to insert bulk data to the Master Data table. The main advantage is its greater speed when loading thousands of records (compared to e.g. /integrate).

If used in a Groovy logic, it is recommended to use the api.addOrUpdate() method instead of this loaddata endpoint within the boundCall().
For more details see the Avoid api.boundCall article.

Please note If no joinFields are provided in the request, then this operation will insert entire records. It means that in this case (without joinFields) with /loaddata.file it is not possible to update just some fields (for this use the /integrate endpoint instead). The source data must always contain the entire row’s content.

Security
basic or X-PriceFx-jwt
Path
TypeCodestringrequired

Enter the type code of the entity you want to insert a data to. See the list of Type Codes in the Pricefx Knowledge Base article.

Enum"C""CDESC""CX""JLTV""LTV""MLTV""P""PBOME""PCOMP""PDESC"
Example: PX
Query
namestring

The name of the table you want to upload a file to.

Bodymultipart/form-data
fileNamestring(binary)required

Provide a file in the CSV format. The file must also contain the name column with the name(s) of the table (PX, CX, SX) you are inserting the records to.

joinFieldsstring

Specify fields that make up a Business key.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata.file/PX/async?name=string' \
  -H 'Content-Type: multipart/form-data' \
  -F fileName=string \
  -F joinFields=string

Responses

OK

Bodyapplication/json
responseobject
Response
application/json
{ "response": { "node": "node", "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