REST API User Data Import V1

This source is used to import users 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 User Data Attribute Mapping , select the attributes to import and optionally modify their JSON keys
  • To create new users or change the role of existing users, you must complete the Role Mapping for the Role attribute. This is where you specify the string of what occurs as the Role attribute value in JSON and the user role in Quant to which it is assigned.


Settings 


  • Attributes
duAttribute
Description
Type
Enabled
Specifies whether the automated task is active and can send data through it.
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
List Item Separator
A character that separates list items, e.g. for values of the Individual Stores attribute.
selection from predefined items
User Data Attribute Mapping
A mapping containing an entry for the username, role, email, and other attributes to be imported.
complex type


Role Mapping 
  • Request

/v1/import/user-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 Introduction and login manual).

Method
POST

The content of the request is an array of JSON objects containing the keys defined in the User Data Attribute Mapping setting. Each JSON record describes a single user.

  • 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.
Empty IDs
Optional - is included only if the import did not end with the status "FAILURE"
Number of records with an empty username.
Duplicated Users
Optional - Included only if the import did not end with a status of "FAILURE" 
The number of records with a username that previously appeared in the records.
Ignored Users

Optional - is included only if the import did not end with the status "FAILURE"

Number of records ignored due to: 
  • the username contains unauthorised characters
  • the username is already occupied by another customer's user
  • the user does not yet exist and the role is not filled correctly
  • the user does not yet exist and the email is empty or has an incorrect format


  • 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 export.

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 "http://[YOUR_COMPANY].iquant.eu/v1/import/user-data/206?debug" \

    -H "Authorization: Bearer ywJqq25pXO6oaCPqgEAiTioBVwM8Ih2kOwzzd3eWK3R2oDSA5n" \

    -H "Accept: application/json" \

    -H "Content-Type: application/json" \

    -H "Cache-Control: no-cache" \

-d '[\ 

  { \

    "Username": "john.foo", \

    "Name" : "John Foo", \

    "Role": "catman", \

    "E-mail": "[email protected]", \

    "All Stores": true \

  }, \

  { \

    "Username": "jack.woo", \

    "Name" : "Jack Woo", \

    "Role": "store manager", \

    "E-mail": "[email protected]", \

    "All Stores": false \

      "Individual Stores": "store1,store2,store3"

  } \

]'

  • Response

{

  "Status": "SUCCESS", 

  "Total Lines": 2,

  "Empty IDs": 0,

  "Ignored Users": 0,

  "Duplicated Users": 0

}