Pricefx REST API Reference
The Pricefx Backend API
Request
Retrieves Data Manager Entities (Field Collections), including object's metadata. A filter can be applied.
| Action | Endpoint |
|---|---|
| List Data Feeds | /datamart.getfcs/DMF |
| List Data Sources | /datamart.getfcs/DMDS |
| List Datamarts | /datamart.getfcs/DM |
| List Datamart Model Tables | /datamart.getfcs/DMT |
| List Data Loads | Use a different endpoint to retrieve Data Loads: /datamart.getdataloads |
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.getfcs/{TypeCode}
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.getfcs/{TypeCode}
- 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.getfcs/DM \
-H 'Content-Type: application/json' \
-d '{
"data": {
"_constructor": "AdvancedCriteria",
"operator": "and",
"criteria": [
{
"fieldName": "lastUpdateBy",
"operator": "equals",
"value": "2147490696"
}
]
}
}'{ "response": { "node": "node", "csrfToken": "tkn", "data": [ … ], "endRow": 1, "status": 0 } }
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.distcalcparams/{typedId}/{logicName}
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.distcalcparams/{typedId}/{logicName}
- 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.distcalcparams/2147483780.DMDL/E2ETestsLogic{ "response": { "node": "string", "csrfToken": "string", "data": [ … ] } }
Request
Retrieves the object's (Data Feed, Data Source, Datamart) row level data. A filter can be applied.
If you want to achieve better performance when fetching large data sets and if you do not need the total number of items in the table – use the /datamart.fetchnocount/{typedId} endpoint instead.
You can choose fields to be returned in the response by employing the resultFields or valueFields filter:
resultFields: returns key-value pairs as objects. This is the more friendly response compared to valueFields but the server fetches all fields from the database in the backend which might result in a slower performance. See the List Product's listProductsResponseExample_resultFields response example.
valueFields: returns just an array of values. Use this option if a better performance is required. See the List Product's listProductsResponseExample_valueFields response example.
When
distinctResultsis set to true, it applies only to the first column specified in thevalueFieldsarray. For example, if"valueFields": ["ConditionType", "TableNumber"]is used, only distinct values forConditionTypeare returned.
Please note: When paging is applied, use a deterministic sort (for example,
"sortBy":["InvoiceLineID"]). If no sorting is defined when paging, you may get duplicates in the response.
Use one of the following object identifiers:
- typedUniquename – Format: "<typeCode>.<uniqueName>" (e.g., DMDS.SalesTransactions)
- typedId – Format: "<dbId>.<typeCode>" (e.g., 123456.DMDS)'
- "*" (asterisk) – Asterisk can be used when you are providing a source$query in
datawithin the request body
Set 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).
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/datamart.fetch/{objectId}
- URL:https://companynode.pricefx.com/pricefx/companypartition/datamart.fetch/{objectId}
- 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.fetch/123456.DMDS || DMDS.Transactions || DM.TxDM || *?timeout=20' \
-H 'Content-Type: application/json' \
-d '{
"endRow": 300,
"oldValues": null,
"operationType": "fetch",
"startRow": 0,
"textMatchStyle": "exact",
"data": {
"_constructor": "AdvancedCriteria",
"operator": "and",
"criteria": [
{
"fieldName": "currency",
"operator": "iEquals",
"value": "EUR"
}
]
},
"sortBy": [
"InvoiceLineID"
],
"resultFields": [
"ProductID",
"label",
"unitOfMeasure",
"currency",
"formulaName",
"lastUpdateDate"
]
}'{ "response": { "node": "string", "startRow": 0, "data": [ … ], "endRow": 0, "totalRows": 0, "status": 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