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.

Task ID
  • 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


Settings
  • 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.
  • SUCCESS = error-free import process
  • PARTIAL_SUCCESS = import completed but generated one or more warnings
  • FAILURE = one or more errors occurred during 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:
  • Non-existent Product Id and creation of new products disabled
  • The product id was found among the deleted products and ignoring deleted products is turned on
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.

Execution Log

If we select a specific record, we can display its details by clicking the Show Items button.

Show Items 


  • 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

}