The Add Multiple Users API creates multiple user accounts in a single request. This API is used for bulk user onboarding by assigning profile information, roles, supervisors, campaigns, locations, and access permissions for multiple users simultaneously.
| URL | https://{Subdomain}.qevalpro.com/api/ManageUser/AddBulkUser |
| Method | POST |
| Sub Domains |
“app” or “ai” |
1. API Headers
Every API call must include two-factor authentication by providing the following headers:
| Header | Type | Description |
|---|---|---|
| Authorisation | String | Bearer <Generated_Token> (generated after successful login) |
| X-API-KEY | String |
<Your_Unique_API_Key> (generated after successful login) Note: If unavailable, email Qeval@etechtexas.com. |
2. Sample Request (Payload)
Description for Request Parameters
| S.No | Name | Type | Description | Is Required? |
| 1 | EmpId | String | Unique employee identifier | Yes |
| 2 | UserName | String | Username used for login | Yes |
| 3 | Password | String | Password for the user account | Yes |
| 4 | EmpType | String | Type of employee (e.g., Agent, FTE) | Yes |
| 5 | FirstName | String | First name of the employee | Yes |
| 6 | LastName | String | Last name of the employee | Yes |
| 7 | String | Email address of the user | Yes | |
| 8 | RoleId | Integer | Role assigned to the user | Yes |
| 9 | SupervisorId | String | Employee ID of the supervisor | Yes |
| 10 | LocationID | Integer | Location assigned to the user | Yes |
| 11 | CampaignId | Integer | Campaign assigned to the user | Yes |
| 12 | IsAccessLocationBased | Boolean (String) | Enables location-based access restrictions | Yes |
| 13 | IsAccessIPBased | Boolean (String) | Enables IP-based login restrictions | Yes |
| 14 | IsSupervisor | Boolean (String) | Indicates whether the user is a supervisor | Yes |
| 15 | IsPartnerAllowed | Boolean (String) | Indicates whether partner access is enabled | Yes |
Validation Rules
| Field | Validation Rule |
| EmpId | Required and must be unique |
| UserName | Required and must be unique |
| Password | Required |
| FirstName | Required |
| LastName | Required |
| Must be a valid email address | |
| RoleId | Must reference a valid role |
| CampaignId | Must reference a valid campaign |
| LocationID | Must reference a valid location |
| IsAccessLocationBased | Must be “true” or “false” |
| IsAccessIPBased | Must be “true” or “false” |
| IsSupervisor | Must be “true” or “false” |
| IsPartnerAllowed | Must be “true” or “false” |
3. Response Examples
Success
Status Codes
| Code | Status | Description |
| 200 | Success | Per-user status messages returned for all records processed |
Response Parameters
| S.No | Name | Type | Description |
| 1 | Message | String | Status message for each user processed in the request |
Failure
Status Codes
| Code | Status | Description |
|---|---|---|
| 400 | Bad Request | Invalid request format |
| 401 | Unauthorised | Invalid username/password |
| 405 | Method Not Allowed | Requested method is not supported for the resource |
| 406 | Not Acceptable | Exception occurred while processing the request |
| 500 | Internal Server Error | Server encountered an error |
Notes
- Authentication is mandatory for accessing this API.
- Multiple user records can be submitted in a single request.
- Each user object is validated independently.
- Validation failures are returned with the corresponding row number in the request payload.
- The API may partially process records; therefore, review the response message for the status of each submitted user.
- Employee ID, Username, and Email should be unique for each user.
- Boolean fields must be passed as string values: “true” or “false”.
- A successful response returns a concatenated status message for all processed user records.
Video