Pricefx REST API Reference
The Pricefx Backend API
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
joinFieldsare provided in the request, then this operation will insert entire records. It means that in this case (withoutjoinFields) 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.
Specify the type code for the entity you want to work with. See the list of Type Codes in the Pricefx Knowledge Base article.'
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/RBTAMto retrieve Rebate Type attribute fields.
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata/{TypeCode}
- URL:https://companynode.pricefx.com/pricefx/companypartition/loaddata/{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/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"
]
]
}
}'{ "response": { "node": "<the server>", "data": [ … ], "status": 0 } }
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
joinFieldsare provided in the request, then this operation will insert entire records. It means that in this case (withoutjoinFields) 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.
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.
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.
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata.file/{TypeCode}
- URL:https://companynode.pricefx.com/pricefx/companypartition/loaddata.file/{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/loaddata.file/PX?name=string' \
-H 'Content-Type: multipart/form-data' \
-F fileName=string \
-F joinFields=string{ "response": { "node": "node", "data": [ … ], "status": 0 } }
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
joinFieldsare provided in the request, then this operation will insert entire records. It means that in this case (withoutjoinFields) 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.
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.
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.
- Mock serverhttps://api.pricefx.com/_mock/openapi/reference/pricefx-server_openapi/loaddata.file/{TypeCode}/async
- URL:https://companynode.pricefx.com/pricefx/companypartition/loaddata.file/{TypeCode}/async
- 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/loaddata.file/PX/async?name=string' \
-H 'Content-Type: multipart/form-data' \
-F fileName=string \
-F joinFields=string{ "response": { "node": "node", "data": [ … ], "status": 0 } }
See the Key-Value Database Storage Knowledge Base article for more details.
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.
Comments