Pricefx REST API Reference
Pricefx REST API
/Pricefx API Reference/- List Rollups
List Data Manager Entities
Execute a Data Load Logic
Get a DM Object
Get a DM Object
Get a DM Object (no count)
Update a Data Manager Entity
Create a Data Manager Entity
Upload a Bulk Data to Data Source
Run a Data Load
Save a Data Load
Mass Edit
List Data Loads (with validation and schedules)
List Data Loads
Delete a Data Manager Entity
Query a Data Manager Object
SQL Query a Data Manager Object
List Charts
Import a Data Load
Export an Excel File (XLSX)
Export a CSV File
Get a DM Export File
Get Action Status
Export Datamart
Restore Default Data Sources
Import a File
Create a DMFieldCollection
List Datamart Orphan Objects
Delete Datamart Orphan Objects
List Rollups
The Pricefx Backend API
Download OpenAPI description
Overview
URL
Pricefx
Languages
Servers
Mock server
https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi
URL:
https://{baseUrl}/pricefx/{partition}
Query
Bodyapplication/jsonSet this parameter to override the default timeout (60 seconds) of the query. The maximum allowed timeout is 300 seconds. The default timeout value and the maximum timeout value can be configured in the backend. Setting higher timeout can be useful, for example, when a query takes long time (e.g., when processing large tables).
Default "60"
Example: timeout=20
sources that SQL can use are query definitions. The sources become CTEs (Common Table Expression) in the final SQL. These are then used as a reference in the main query instead of referring to the actual tables directly. The request example compares the volume by month 2019 to 2020.
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.sqlquery
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.sqlquery
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
'https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.sqlquery?timeout=20' \
-H 'Content-Type: application/json' \
-d '{
"operationType": "fetch",
"startRow": 0,
"endRow": 10000,
"data": {
"sources": {
"s0": {
"query": {
"source": "DM.InvoicesDM",
"projections": {
"Month": {
"expression": "Invoice_DateMonth"
},
"Quantity": {
"expression": "SUM({field})",
"parameters": {
"field": "Sales_Quantity"
},
"advancedProjection": true
}
},
"options": {
"currency": "EUR"
},
"filter": {},
"aggregateFilter": null,
"dimensionFilters": [
{
"Invoice_DateYear": [
"2019"
]
}
],
"rollup": true
}
},
"s1": {
"query": {
"source": "DM.InvoicesDM",
"projections": {
"Month": {
"expression": "Invoice_DateMonth"
},
"Quantity": {
"expression": "SUM({field})",
"parameters": {
"field": "Sales_Quantity"
},
"advancedProjection": true
}
},
"options": {
"currency": "EUR"
},
"filter": {},
"aggregateFilter": null,
"dimensionFilters": [
{
"Invoice_DateYear": [
"2020"
]
}
],
"rollup": true
}
}
},
"with": {
"w0": "SELECT Month FROM (VALUES ('\''M01'\''), ('\''M02'\''), ('\''M03'\''), ('\''M04'\''), ('\''M05'\''), ('\''M06'\''), ('\''M07'\''), ('\''M08'\''), ('\''M09'\''), ('\''M10'\''), ('\''M11'\''), ('\''M12'\'')) AS t(Month)"
},
"sql": "SELECT w0.Month \"Month\", SUM(s0.quantity) \"Volume 2019\", SUM(s1.quantity) \"Volume 2020\", 100 * (SUM(s1.quantity) / SUM(s0.quantity) - 1.0) \"VolumeΔ%\" FROM w0 LEFT OUTER JOIN s0 ON w0.Month = RIGHT(s0.Month,3) LEFT OUTER JOIN s1 ON w0.Month = RIGHT(s1.Month,3) GROUP BY w0.Month ORDER BY w0.Month"
}
}'Response
application/json
{ "response": { "node": "e2e-staging-node", "startRow": 0, "data": [ … ], "endRow": 3, "totalRows": 3, "status": 0 } }
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getrollups
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.getrollups
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getrollups \
-H 'Content-Type: application/json' \
-d '{
"operationType": "fetch",
"startRow": 0,
"endRow": null,
"textMatchStyle": "substring",
"data": {
"fieldName": "owner",
"operator": "equals",
"value": null,
"_constructor": "AdvancedCriteria"
},
"oldValues": null
}'Response
application/json
{ "response": { "status": 0, "startRow": 0, "node": "string", "data": [ … ], "endRow": 0 } }
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getcharts
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.getcharts
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
https://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getchartsResponse
application/json
{ "response": { "status": 0, "startRow": 0, "node": "string", "data": [ … ], "endRow": 0 } }
CommentsCopy for LLM Copy page as Markdown for LLMs View as Markdown Open this page as Markdown Open in ChatGPT Get insights from ChatGPT Open in Claude Get insights from Claude Connect to Cursor Install MCP server on Cursor Connect to VS Code Install MCP server on VS Code