V 2.0

Employee

Description

The Employee API provides comprehensive functionality to manage employees (agents) in a call center environment. It offers detailed capabilities for creating, updating, listing, and managing employee information including their roles, working hours, group assignments, and destination configurations. This API is essential for HR managers, administrators, and supervisors to maintain and monitor employee data in real-time.

Authentication

All endpoints require authentication using either:

Ensure that you provide the necessary authentication parameters with each request.

Authentication Methods

  1. Session ID Authentication

    • Use the ssid parameter

    • Provides a quick and simple authentication method

  2. User ID and Token Authentication

    • Requires both userId and token parameters

    • Offers more granular access control

Note: When userId and token are used, ssid should not be present in the request.

Error Codes

Employee API Specific Error Codes

Error Code Description Potential Cause Recommended Action
1000 Invalid parameters The provided parameters are incorrect or malformed Review and correct the request parameters
1014 Invalid token Authentication token is invalid or expired Re-authenticate and obtain a new token
1015 Permission denied User lacks required permissions Verify user permissions (ADD_EMPLOYEE, EDIT_EMPLOYEES, VIEW_AGENTS, etc.)
1047 Invalid request (empty body) Request body is empty or not provided Ensure request body contains required data
1501 Data already in processing A similar request is currently being processed Wait and retry the request after a short interval
1502 Invalid filter value The provided filter parameters are incorrect or malformed Review and correct the filter parameters
1503 Invalid role id The provided role ID does not exist Verify the role ID exists in your account
1504 Invalid parent Parent employee ID is invalid or not found Provide a valid parent ID or use "root"
1505 Invalid group data Group assignment data is malformed or group IDs don't exist Verify all group IDs exist in your account
1506 Employee and parent could not be same Attempting to set employee as their own parent Choose a different parent employee
1507 Invalid AgentID The provided agent/employee ID is invalid Verify the employee ID is correct
1508 Invalid status value Status value must be 0 or 1 Use 0 for inactive, 1 for active
1509 Invalid employee Employee not found or user unauthorized to access Verify employee exists and you have access
1510 Invalid destination Destination type or value is invalid Verify destination type (MOBILE, SIP, etc.) and value
1511 Working time format is invalid Working hours are not in correct format or range Use minutes from midnight (0-1439)
1512 Email already exists The email address is already registered Use a unique email address
1513 Invalid type Employee type is invalid Use valid types: "Both", "Inbound", "Outbound"
1514 Invalid mobile number Mobile number format is incorrect Provide a valid mobile number
1515 Invalid name Employee name is empty or invalid Provide a valid employee name
1516 Invalid DID number DID number format is incorrect Verify DID number format
1517 Your agentid and your loginid must be same Agent trying to modify another agent's data Agents can only modify their own data
1518 Data could not be updated Database update operation failed Try again or contact support
1519 Call password must be minimum 6 digits (update) / 8 digits (create) Call password length requirement not met Provide password meeting length requirement
1520 You must be single field update Multiple fields provided when single field expected Update only one field at a time
1521 Please provide only valid fields Request contains invalid or unknown fields Remove invalid fields from request
1522 Data could not be inserted Database insert operation failed Try again or contact support
1523 Your agent information is already added Duplicate employee creation attempt Employee already exists with this information
1524 Invalid action The requested action is not valid Verify the action parameter
1525 Invalid target agent ID Target agent ID for operation is invalid Provide a valid target agent ID
1526 Invalid ID The provided ID is invalid Verify the ID parameter
1527 Invalid type Type parameter value is invalid Use a valid type value
1528 Invalid favorite data Favorite data format is incorrect Verify favorite data structure
1529 Invalid domain Domain parameter is invalid Provide a valid domain
1530 Invalid agent timing Agent timing data is incorrect Verify timing format and values
1532 Employee limit reached Account has reached maximum employee limit Upgrade plan or deactivate unused employees
1534 PreDelete value exceeds limit of 2 PreDelete counter exceeds maximum allowed value Contact support to resolve

Additional Error Handling Guidelines

Best Practices

  1. Validate all input parameters before making a request

  2. Handle potential authentication failures gracefully

  3. Implement appropriate error handling and retry mechanisms

  4. Use the most specific authentication method for your use case

  5. Be mindful of request frequency to prevent server overload

  6. Check employee limits before creating or activating employees

  7. Ensure email uniqueness across all employees

  8. Use proper working hours format (minutes from midnight: 0-1439)

  9. Validate role and group IDs before assignment

  10. Use partial updates when modifying employee data - only send fields that need to change

  11. Monitor change logs for audit trail and compliance

  12. Test with single employee before performing bulk operations

Working Hours Format

Working hours are specified in minutes from midnight (0-1439):

Example:

{
  "MON": [
    { "from": 540, "to": 1080 }  // 9:00 AM to 6:00 PM
  ],
  "TUE": [
    { "from": 540, "to": 1080 }
  ]
}

Multiple time slots per day:

{
  "MON": [
    { "from": 0, "to": 1137 },      // 12:00 AM to 6:57 PM
    { "from": 1139, "to": 1239 },   // 6:59 PM to 8:39 PM
    { "from": 1339, "to": 1439 }    // 10:19 PM to 11:59 PM
  ]
}

Destination Types

Common destination types for employee call routing:

Type Description Example Value
MOBILE Mobile phone number "9876543210"
SIP SIP endpoint/extension "sip:user@domain.com"
LANDLINE Landline phone number "0123456789"
WEBRTC WebRTC endpoint "webrtc:endpoint"

Employee Status Values

Status Value Description
Active 1 Employee is active and can receive calls
Inactive 0 Employee is inactive and cannot receive calls

Parent Hierarchy Values

Valid parent values for employee hierarchy:

Permissions Required

Different operations require different permissions:

Operation Permission
Create Employee ADD_EMPLOYEE
Update Employee EDIT_EMPLOYEES
View Employees VIEW_AGENTS or VIEW_ALL_AGENTS
Delete Employee DELETE_EMPLOYEE

Note: Permissions can be bypassed by setting forward=true in the request (admin only).

Recommendation

For a complete understanding of all possible error codes and their implications, refer to the comprehensive SarvErrors documentation.

The documentation now provides a clear, structured overview of the Employee API's error handling, authentication methods, and best practices. The error codes table includes additional context like potential causes and recommended actions to help developers better understand and resolve issues.

List

{{brand}}/api/v2/Employee/List

Endpoint

Description

The List Employees endpoint provides a paginated list of employees (agents) based on specified criteria. This endpoint allows you to retrieve employee information with support for filtering, searching, and pagination. It's useful for populating employee lists in user interfaces, generating reports, or performing bulk operations on employees.

Use Cases

Request Details

Parameter Type Required Description
ssid string No Session ID (required if token is not used)
userId string No User ID (required if ssid is not used)
token string No Authentication token (required if ssid is not used)
agentid string No Specific agent/employee ID to retrieve
status string No Filter by status: "active" (default), "inactive", or "deleted"
search_params object No Object containing search filters (name, email, agent_id, working_day, etc.)
page number No Page number for pagination (default: 1)
limit number No Number of records per page (default: 10)
getAll boolean No If true, returns all records without pagination
groupid string No Filter employees by group ID
quick boolean No Flag for quick fetch (returns minimal employee data)

Request Example

With Token and UserId

{
  "userId": "{{userid}}",
  "token": "{{token}}",
  "page": 1,
  "limit": 10
}

With SSID

{
  "ssid": "{{ssid}}",
  "page": 1,
  "limit": 10
}

With Filters

{
  "userId": "{{userid}}",
  "token": "{{token}}",
  "status": "active",
  "search_params": {
    "name": "John",
    "email": "john@example.com"
  },
  "groupid": "{{groupid}}",
  "page": 1,
  "limit": 20
}

Response Details

Success Response Structure

Field Type Description
response array Array of employee objects
response[].name string Employee's name
response[].email string Employee's email address
response[].phone string Employee's phone number
response[].address string Employee's address
response[].dest_type string Destination type (e.g., "MOBILE", "SIP")
response[].dest_value string Destination value
response[].call_pass string Employee's call password
response[].role string Employee's role ID
response[].roleName string Employee's role name
response[].parent string Employee's parent hierarchy
response[].parentName string Employee's parent name
response[].group array Array of group IDs the employee belongs to
response[].groupNames array Array of group names with IDs
response[].status number Employee's status (1: active, 0: inactive)
response[].isDeleted number Deletion status (0: not deleted, 1: deleted)
response[].working array Employee's working hours configuration
response[].unique_id number Employee's unique identifier
response[].user_id string User ID the employee belongs to
response[].cad number CAD (Computer-Aided Dispatch) status
agtLimit number Maximum agent limit for the account
currentPage number Current page number (0 if no data)
totalPages number Total number of pages (0 if no data)
totalRecords number Total number of records (0 if no data)
status string Response status ("success" or "error")
code number Response code (200 for success)

Success Response Example

{
  "response": [
    {
      "name": "XXXX XXXX",
      "favorite": "",
      "email": "xxxx.xxxx@example.com",
      "phone": "91XXXXXXXXXX",
      "address": "XXX XXXX XX",
      "dest_type": "MOBILE",
      "dest_value": "XXXXXXXXXX",
      "call_pass": "XXXXXXXX",
      "role": "X",
      "password": "XXXXXXXXXXXXXXXX",
      "parent": ",START,",
      "create_date": 1720093436,
      "create_by": "{{userid}}",
      "create_by_type": "",
      "user_id": "{{userid}}",
      "unique_id": 2,
      "allowDid": "",
      "status": 1,
      "isDeleted": 0,
      "preDeleted": 0,
      "group": [17, 28],
      "working": [
        {
          "wDays": ["MON", "TUE", "WED", "THU", "FRI"],
          "from": 540,
          "to": 1080,
          "agentId": 2
        }
      ],
      "groupNames": [
        {
          "17": "Sales Team"
        },
        {
          "28": "Support Team"
        }
      ],
      "roleName": "Agent",
      "parentName": "ROOT",
      "cad": 0
    }
  ],
  "agtLimit": 50,
  "currentPage": 1,
  "totalPages": 1,
  "totalRecords": 1,
  "status": "success",
  "code": 200
}

Empty Response Example

{
  "response": [],
  "agtLimit": 50,
  "currentPage": 0,
  "totalPages": 0,
  "totalRecords": 0,
  "status": "success",
  "code": 200
}

Error Response Examples

Error Code Description Message
1014 Invalid Session/Token Invalid token
1000 Invalid Parameters Invalid parameters
1015 Permission Denied Permission denied

Error Response Example

{
  "status": "error",
  "code": 1014,
  "message": "Invalid token"
}

Notes

Working Hours Format

The working array contains objects with the following structure:

{
  "wDays": ["MON", "TUE", "WED", "THU", "FRI"],
  "from": 540,
  "to": 1080,
  "agentId": 2
}

Example cURL Request

curl -X POST "deepcall/api/v2/Employee/list" \
  -H "Content-Type: application/json" \
  -d '{
    "userId": "{{userid}}",
    "token": "{{token}}",
    "page": 1,
    "limit": 10,
    "status": "active"
  }'

Example with Search Parameters

curl -X POST "deepcall/api/v2/Employee/list" \
  -H "Content-Type: application/json" \
  -d '{
    "userId": "{{userid}}",
    "token": "{{token}}",
    "search_params": {
      "name": "John",
      "email": "john@example.com",
      "working_day": ["MON", "TUE"]
    },
    "groupid": "{{groupid}}",
    "page": 1,
    "limit": 20
  }'

List

var axios = require('axios');
var data = '{"ssid":"{{ssid}}"}';

var config = {
 method: 'post',
 url: '{{brand}}/api/v2/Employee/List',
 headers: { 
'Content-Length': ''
 },
 data : data
};

axios(config)
.then(function (response) {
 console.log(JSON.stringify(response.data));
})
.catch(function (error) {
 console.log(error);
});
setUrl('{{brand}}/api/v2/Employee/List');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
 'follow_redirects' => TRUE
));
$request->setHeader(array(
 'Content-Length' => ''
));
$request->setBody('{"ssid":"{{ssid}}"}');
try {
 $response = $request->send();
 if ($response->getStatus() == 200) {
echo $response->getBody();
 }
 else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
 }
}
catch(HTTP_Request2_Exception $e) {
 echo 'Error: ' . $e->getMessage();
}
import http.client

conn = http.client.HTTPSConnection("{{brand}}")
payload = "{\"ssid\":\"{{ssid}}\"}"
headers = {
 'Content-Length': ''
}
conn.request("POST", "/api/v2/Employee/List", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
var client = new RestClient("{{brand}}/api/v2/Employee/List");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
var body = @"{""ssid"":""{{ssid}}""}";
request.AddParameter("text/plain", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
curl --location -g --request POST '{{brand}}/api/v2/Employee/List' \
--data-raw '{"ssid":"{{ssid}}"}'
var request = http.Request('POST', Uri.parse('{{brand}}/api/v2/Employee/List'));
request.body = '''{"ssid":"{{ssid}}"}''';

http.StreamedResponse response = await request.send();

if (response.statusCode == 200) {
   print(await response.stream.bytesToString());
}
else {
   print(response.reasonPhrase);
}
package main

import (
   "fmt"
   "strings"
   "net/http"
   "io/ioutil"
)

func main() {

   url := "%7B%7Bbrand%7D%7D/api/v2/Employee/List"
   method := "POST"

   payload := strings.NewReader(`{"ssid":"{{ssid}}"}`)

   client := &http.Client {
   }
   req, err := http.NewRequest(method, url, payload)

   if err != nil {
      fmt.Println(err)
      return
   }
   res, err := client.Do(req)
   if err != nil {
      fmt.Println(err)
      return
   }
   defer res.Body.Close()

   body, err := ioutil.ReadAll(res.Body)
   if err != nil {
      fmt.Println(err)
      return
   }
   fmt.Println(string(body))
}
POST /api/v2/Employee/List HTTP/1.1
Host: {{brand}}
Content-Length: 19

{"ssid":"{{ssid}}"}
OkHttpClient client = new OkHttpClient().newBuilder()
   .build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "{\"ssid\":\"{{ssid}}\"}");
Request request = new Request.Builder()
   .url("{{brand}}/api/v2/Employee/List")
   .method("POST", body)
   .addHeader("Content-Length", "")
   .build();
Response response = client.newCall(request).execute();
var myHeaders = new Headers();
myHeaders.append("Content-Length", "");

var raw = "{\"ssid\":\"{{ssid}}\"}";

var requestOptions = {
   method: 'POST',
   headers: myHeaders,
   body: raw,
   redirect: 'follow'
};

fetch("{{brand}}/api/v2/Employee/List", requestOptions)
   .then(response => response.text())
   .then(result => console.log(result))
   .catch(error => console.log('error', error));
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
   curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
   curl_easy_setopt(curl, CURLOPT_URL, "%7B%7Bbrand%7D%7D/api/v2/Employee/List");
   curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
   curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
   struct curl_slist *headers = NULL;
   headers = curl_slist_append(headers, "Content-Length: ");
   curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
   const char *data = "{\"ssid\":\"{{ssid}}\"}";
   curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
   res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
#import 

dispatch_semaphore_t sema = dispatch_semaphore_create(0);

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"%7B%7Bbrand%7D%7D/api/v2/Employee/List"]
   cachePolicy:NSURLRequestUseProtocolCachePolicy
   timeoutInterval:10.0];
NSDictionary *headers = @{
   @"Content-Length": @""
};

[request setAllHTTPHeaderFields:headers];
NSData *postData = [[NSData alloc] initWithData:[@"{\"ssid\":\"{{ssid}}\"}" dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postData];

[request setHTTPMethod:@"POST"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
   if (error) {
      NSLog(@"%@", error);
      dispatch_semaphore_signal(sema);
   } else {
      NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
      NSError *parseError = nil;
      NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
      NSLog(@"%@",responseDictionary);
      dispatch_semaphore_signal(sema);
   }
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
open Lwt
open Cohttp
open Cohttp_lwt_unix

let postData = ref "{\"ssid\":\"{{ssid}}\"}";;

let reqBody = 
   let uri = Uri.of_string "%7B%7Bbrand%7D%7D/api/v2/Employee/List" in
   let headers = Header.init ()
      |> fun h -> Header.add h "Content-Length" ""
   in
   let body = Cohttp_lwt.Body.of_string !postData in

   Client.call ~headers ~body `POST uri >>= fun (_resp, body) ->
   body |> Cohttp_lwt.Body.to_string >|= fun body -> body

let () =
   let respBody = Lwt_main.run reqBody in
   print_endline (respBody)
$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add("Content-Length", "")

$body = "{`"ssid`":`"{{ssid}}`"}"

$response = Invoke-RestMethod '{{brand}}/api/v2/Employee/List' -Method 'POST' -Headers $headers -Body $body
$response | ConvertTo-Json
require "uri"
require "net/http"

url = URI("{{brand}}/api/v2/Employee/List")

http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Post.new(url)
request["Content-Length"] = ""
request.body = "{\"ssid\":\"{{ssid}}\"}"

response = http.request(request)
puts response.read_body
printf '{"ssid":"{{ssid}}"}'| http  --follow --timeout 3600 POST '{{brand}}/api/v2/Employee/List' \
 Content-Length:
import Foundation
#if canImport(FoundationNetworking)
import FoundationNetworking
#endif

var semaphore = DispatchSemaphore (value: 0)

let parameters = "{\"ssid\":\"{{ssid}}\"}"
let postData = parameters.data(using: .utf8)

var request = URLRequest(url: URL(string: "{{brand}}/api/v2/Employee/List")!,timeoutInterval: Double.infinity)
request.addValue("", forHTTPHeaderField: "Content-Length")

request.httpMethod = "POST"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in 
   guard let data = data else {
      print(String(describing: error))
      semaphore.signal()
      return
   }
   print(String(data: data, encoding: .utf8)!)
   semaphore.signal()
}

task.resume()
semaphore.wait()

Example Response

 [{"key":"Date"
"value":"Sat
 15 Nov 2025 09:28:36 GMT"}
{"key":"Content-Type"
"value":"application\/json; charset=utf-8"}
{"key":"Content-Length"
"value":"6979"}
{"key":"Connection"
"value":"keep-alive"}
{"key":"Access-Control-Allow-Origin"
"value":"*"}
{"key":"Access-Control-Allow-Methods"
"value":"GET
 PUT
 POST
 DELETE
 OPTIONS"}
{"key":"Access-Control-Allow-Headers"
"value":"session-token
Authorization
Origin
Accept
Content-Type
DNT
Authorization
Keep-Alive
User-Agent
X-Requested-With
If-Modified-Since
Cache-Control
Content-Type
Content-Range
Range"}
{"key":"Access-Control-Allow-Credentials"
"value":"true"}
{"key":"Vary"
"value":"Origin"}
{"key":"ETag"
"value":"W\/\"1b43-2DchF5vI5pvpEwi1FhwrzqzHRjg\""}
{"key":"Strict-Transport-Security"
"value":"max-age=15724800; includeSubDomains"}
{"key":"Access-Control-Max-Age"
"value":"1728000"}]
 {
    "response": [
        {
            "name": "bhawesh",
            "favorite": "",
            "email": "brijendra11.u@sarv.com",
            "phone": "918442021533",
            "address": "jaipur",
            "dest_type": "MOBILE",
            "dest_value": "8442021533",
            "call_pass": "46876828",
            "role": "1",
            "password": "jKyhuSn7s945GCm1",
            "parent": ",START,6,",
            "create_date": 1720094457,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 5,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 1,
            "offTimeDest": {
                "type": "",
                "destination": ""
            },
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                33
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT"
                    ],
                    "from": 60,
                    "to": 1439,
                    "agentId": 5
                }
            ],
            "groupNames": [
                {
                    "33": "test double id"
                }
            ],
            "roleName": "test",
            "parentName": "Bhawna ji"
        },
        {
            "name": "New Agent 15 bhawesh",
            "favorite": "",
            "email": "fghjasdg@sarv.com",
            "phone": "918442021533",
            "address": "E 14 15",
            "dest_type": "MOBILE",
            "dest_value": "918442021533",
            "call_pass": "4428551",
            "role": "43",
            "password": "1RRSVyYSw8h99tBg",
            "parent": ",START,51,",
            "create_date": 1733834800,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 21,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {
                "type": "MOBILE",
                "destination": "919876543210"
            },
            "type": "IBD",
            "ipPhoneUser": "",
            "group": [
                33,
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 180,
                    "to": 1380,
                    "agentId": 21
                }
            ],
            "groupNames": [
                {
                    "33": "test double id"
                },
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "supervisor bbx",
            "parentName": "devansh"
        },
        {
            "name": "vijay Ji testing",
            "favorite": "",
            "email": "vijayji@sarv.com",
            "phone": "919376162321",
            "address": "E 14 15",
            "dest_type": "MOBILE",
            "dest_value": "919694730287",
            "call_pass": "2192378",
            "role": "1",
            "password": "bQT9m4EcDfY4Uxd",
            "parent": ",START,",
            "create_date": 1733899508,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 24,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {},
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                95,
                67,
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 60,
                    "to": 1439,
                    "agentId": 24
                }
            ],
            "groupNames": [
                {
                    "95": "bbx"
                },
                {
                    "67": "ctc  with ivr group"
                },
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "test",
            "parentName": "ROOT"
        },
        {
            "name": "testing final",
            "favorite": "",
            "email": "test.final@gmail.com",
            "phone": "918442021533",
            "address": "from jaipur",
            "dest_type": "WEBRTC",
            "dest_value": "123123",
            "call_pass": "76439212",
            "role": "27",
            "password": "o9Rknlw23ZINs41",
            "parent": ",START,21,",
            "create_date": 1746771764,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 26,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {
                "type": "MOBILE",
                "destination": "8442021533"
            },
            "type": "Both",
            "ipPhoneUser": "89898",
            "group": [
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 0,
                    "to": 1320,
                    "agentId": 26
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "First Role",
            "parentName": "New Agent 15 bhawesh"
        },
        {
            "name": "devansh_IBD",
            "favorite": "",
            "email": "devansh.dev@sarv.com",
            "phone": "916277619877",
            "address": "sitapura",
            "dest_type": "MOBILE",
            "dest_value": "9588937501",
            "call_pass": "21918545",
            "role": "26",
            "password": "lSAJ5KIi5sinCgQr",
            "parent": ",START,25,",
            "create_date": 1749723973,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 30,
            "allowBusinessNum": [
                "+919797775278"
            ],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {
                "type": "MOBILE",
                "destination": "9588937501"
            },
            "type": "IBD",
            "ipPhoneUser": "9588937501",
            "group": [
                85,
                31
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 1,
                    "to": 1439,
                    "agentId": 30
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                },
                {
                    "31": "D-testG"
                }
            ],
            "roleName": "Test me",
            "parentName": "D-Test"
        },
        {
            "name": "mahipall",
            "favorite": "",
            "email": "mp@sarv.com",
            "phone": "919024702505",
            "address": "jpr",
            "dest_type": "WEBRTC",
            "dest_value": "10003",
            "call_pass": "3881516",
            "role": "1",
            "password": "BmmiOKhjZ3KyolNN",
            "parent": ",START,",
            "create_date": 1752226792,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 33,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {
                "type": "MOBILE",
                "destination": "919024702505"
            },
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                85,
                29,
                67,
                28
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 0,
                    "to": 1439,
                    "agentId": 33
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                },
                {
                    "29": "Mahipal singh"
                },
                {
                    "67": "ctc  with ivr group"
                },
                {
                    "28": "Mahipal "
                }
            ],
            "roleName": "test",
            "parentName": "ROOT"
        },
        {
            "name": "Voice AI Bot Suraj",
            "favorite": "",
            "email": "suraj.j@sarv.com",
            "phone": "916378630703",
            "address": "Jaipur",
            "dest_type": "WEBRTC",
            "dest_value": "111111",
            "call_pass": "735956",
            "role": "27",
            "password": "ck1sUk61DblHyMF",
            "parent": ",START,",
            "create_date": 1753257588,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 34,
            "allowBusinessNum": "",
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {},
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 0,
                    "to": 1439,
                    "agentId": 34
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "First Role",
            "parentName": "ROOT"
        },
        {
            "name": "Devansh testing",
            "favorite": "",
            "email": "devansh@mail.com",
            "phone": "916375802837",
            "address": "jaipur",
            "dest_type": "MOBILE",
            "dest_value": "6375802837",
            "call_pass": "22678679",
            "role": "41",
            "password": "BN9pcupFNFtqnHdn",
            "parent": ",START,",
            "create_date": 1754372170,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 39,
            "allowBusinessNum": "",
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {},
            "type": "IBD",
            "ipPhoneUser": "",
            "group": [
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT"
                    ],
                    "from": 480,
                    "to": 1260,
                    "agentId": 39
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "Devansh Test",
            "parentName": "ROOT"
        },
        {
            "name": "Abhimanyu Sharma",
            "favorite": "",
            "email": "abhimanyu@snet.in",
            "phone": "919782888889",
            "address": "100",
            "dest_type": "MOBILE",
            "dest_value": "919782888889",
            "call_pass": "933345",
            "role": "28",
            "password": "5UaZWewOBYBVqix",
            "parent": ",START,",
            "create_date": 1754511647,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 40,
            "allowBusinessNum": [],
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {},
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 0,
                    "to": 1380,
                    "agentId": 40
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "New Test Role",
            "parentName": "ROOT"
        },
        {
            "name": "Devansh Test-1",
            "favorite": "",
            "email": "devasnh@gamil.com",
            "phone": "916375802837",
            "address": "jaipur",
            "dest_type": "MOBILE",
            "dest_value": "6375802837",
            "call_pass": "669675",
            "role": "41",
            "password": "wGbrGMyN8gwjqUA",
            "parent": ",START,",
            "create_date": 1754544787,
            "create_by": "29791451",
            "create_by_type": "",
            "user_id": "29791451",
            "unique_id": 41,
            "allowBusinessNum": "",
            "status": 1,
            "isDeleted": 0,
            "preDeleted": 0,
            "offTimeDest": {},
            "type": "Both",
            "ipPhoneUser": "",
            "group": [
                85
            ],
            "working": [
                {
                    "wDays": [
                        "MON",
                        "TUE",
                        "WED",
                        "THU",
                        "FRI",
                        "SAT",
                        "SUN"
                    ],
                    "from": 480,
                    "to": 1380,
                    "agentId": 41
                }
            ],
            "groupNames": [
                {
                    "85": "abhi android"
                }
            ],
            "roleName": "Devansh Test",
            "parentName": "ROOT"
        }
    ],
    "agtLimit": 180,
    "currentPage": 1,
    "totalPages": 3,
    "totalRecords": 29,
    "status": "success",
    "code": 200
}