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.
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.
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 |
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.
|
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:
|
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.
If we select a specific record, we can display its details by clicking the Show Items button.
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
}