REST API Sales Import V1
This source is used to sales import in Quant. Input and output format is JSON.
Use the Automatic Tasks section to create and set up an import. Once created, the task list will have the ID that you pass in the request URL.
Settings
Before using the API, you must edit the following attributes in the Settings tab:
- Check the Enabled attribute to enable the task
- In the Users with API Access Permission, select one or more users with the Robot role who will have permission to run the task.
- In the Sales Attribute Mapping , select the attributes to import and optionally modify their JSON keys
Attributes
Attribute | Description | Type |
Enabled | Specifies whether the user can access this resource. | yes/no |
Title | Custom name of the automated task. | text |
Description | Custom description of the automatic task function. | formatted text |
Notes | Notes. | long text |
Emails for Notifications | One or more email addresses to which emails with error conditions will be sent. | list of strings |
Users with API Access Permission | Users with the Robot role who are authorized to run the task. | list of users |
Date Format | Date entry format, eg 31.12.19 | selection |
Create New Products | If enabled, the import will create new products for non-existent product IDs. | yes/no |
Set New Products for Planogramming | If enabled, newly created products will be designed to create planograms. This option is active only when Create New Products is enabled. | yes/no |
Ignore Deleted Products | By default, if the import does not find a live product for a given ID, it searches among the deleted products. If it finds a deleted one, it will revive it. Enabling this option ignores deleted products instead of recovering them. | yes/no |
Sales Attribute Mapping | A mapping containing an entry for the product ID, branch ID, date, posting type, and each type of sale to be imported. | complex type |
Request
/v1/import/sales-data/{task_id}
Parameter | Value |
URL | ?debug added to the URL will also display a warning in the response. Without it, only errors are listed. |
Header | Accept: application/json |
Header | Content-type: application/json |
Header | Authorization: Bearer <TOKEN> TOKEN is obtained via /authenticate (see Login). |
Method | POST |
The content of the request is an array of JSON objects containing the keys defined in the Sales Attribute Mapping setting. These individual records describe sales for 1 product, 1 set of sales, 1 date, and 1 posting type.
Response
Key | Value |
Status | A string describing the final state of the import.
|
Warnings | It is optional, ie. is included only if the ?debug parameter is in the URL and the import generated at least one warning. List of warning strings. |
Errors | Optional - included only if the import generated at least one error. List of error strings. |
Total Lines | Optional - is included only if the import did not end with the status "FAILURE" Number of records on input. |
Created Products | Optional - is included only if the import did not end with the status "FAILURE" Number of products created by import. |
Ignored Products | Optional - Included only if the import did not end with a status of "FAILURE" Number of input products for which sales were not imported. Possible reasons are:
|
Changed Figures | Optional - is included only if the import did not end with the status "FAILURE" Number of records changed by import. |
Status Codes
Status | Value |
200 OK | Import successful with "SUCCESS" or "PARTIAL_SUCCESS" status. The response may contain warnings or minor errors. |
400 Bad Request | Incorrect task settings or incorrect request. |
401 Unauthorized | The authorization token is invalid, or the user who is logged on with the token does not have permission to run this task. |
404 Not Found | No task was found with the ID specified in the URL. |
500 Internal Server Error | A critical server-side error occurred during the import. |
503 Service Unavailable | The task is already running. Retry launching the task after count of seconds given in response header Retry-After. |
Execution Log
In Quant, in addition to task settings, you can also view records of individual imports, including statistics, errors, and warnings.
If we select a specific record, we can display its details by clicking the Show Items button.
Request
curl -X POST --location "https://[YOUR_COMPANY].iquant.eu/v1/import/sales-data/22?debug" \
-H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Cache-Control: no-cache" \
-d '[\
{ \
"Date": "30.1.21", \
"Product Id" : "123", \
"Store Id": "2", \
"GP1": 1.1, \
"Sold Pieces": 1 \
}, \
{ \
"Date": "31.1.21", \
"Product Id" : "123", \
"Store Id": "2", \
"GP1": 3.3, \
"Sold Pieces": 3 \
} \
]'
Response
{
"Status": "SUCCESS",
"Total Lines": 2,
"Changed Figures": 2,
"Ignored Products": 0,
"Created Products": 0
}