<service domain|custom domain>/app/<portal>/api/v3/timesheet
Timesheet
The timesheet module in ServiceDesk Plus MSP Cloud consolidates technicians’ work log from various modules into time sheet entries and enables you to manage them.
Attributes
id (long)
Unique identifier to identify the timesheet
start_time (datestamp)
Indicates the start time of the timesheet
end_time (datestamp)
Indicates the end time of the timesheet
utilisation (int)read only
Indicates the total utilisation percentage of the technician for the given period of time based on the technician operational hour
total_op_hrs (timediff)read only
Indicates the total operational hours worked by the technician for the timesheet period
total_non_op_hrs (timediff)read only
Indicates the total non operational hours worked by the technician for the timesheet period
More Attributes Expand all
status (timesheet_status)
Indicates the status of the timesheet. Allowed Values: Submitted, Rejected, Revoked, Re-Opened, Re-Submitted, Approved.
Add Timesheet
This operation helps to add a Timesheet.
Mandatory Fields :- start_time, end_time
Url
Attributes
id (long)
Unique identifier to identify the timesheet
start_time (datestamp)
Indicates the start time of the timesheet
end_time (datestamp)
Indicates the end time of the timesheet
utilisation (int)read only
Indicates the total utilisation percentage of the technician for the given period of time based on the technician operational hour
total_op_hrs (timediff)read only
Indicates the total operational hours worked by the technician for the timesheet period
total_non_op_hrs (timediff)read only
Indicates the total non operational hours worked by the technician for the timesheet period
More Attributes Expand all
status (timesheet_status)
Indicates the status of the timesheet. Allowed Values: Submitted, Rejected, Revoked, Re-Opened, Re-Submitted, Approved.
$ curl <service domain|custom domain>/app/<portal>/api/v3/timesheet\
-X POST\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
-d input_data='{
"timesheet": {
"start_time": {
"value": "2025-05-11"
},
"end_time": {
"value": "2025-05-17"
}
}
}'
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {
"timesheet": {
"start_time": {
"value": "2025-05-11"
},
"end_time": {
"value": "2025-05-17"
}
}
};
params = {"input_data": input_data};
response = invokeurl
[
url: url
type: POST
parameters: params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$input_data = @'
{
"timesheet": {
"start_time": {
"value": "2025-05-11"
},
"end_time": {
"value": "2025-05-17"
}
}
}
'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method post -Body $data -Headers $headers
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{
"timesheet": {
"start_time": {
"value": "2025-05-11"
},
"end_time": {
"value": "2025-05-17"
}
}
}'''
data = urlencode({"input_data":input_data}).encode()
httprequest = Request(url, headers=headers,data=data, method="POST")
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"timesheet": {
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "May 19, 2025 12:29 PM",
"value": "1747637956082"
},
"start_time": {
"display_value": "May 11, 2025",
"value": "2025-05-11"
},
"comments": null,
"total_non_op_hrs": {
"hours": "33",
"minutes": "32",
"value": "120720000"
},
"end_time": {
"display_value": "May 17, 2025",
"value": "2025-05-17"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000964001",
"total_op_hrs": {
"hours": "6",
"minutes": "46",
"value": "24360000"
},
"created_by": {
"email_id": "john@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Submitted",
"id": "11478000000751007"
},
"utilisation": 111
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Edit Timesheet
This operation helps to edit a Timesheet.
Url
<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}
Attributes
id (long)
Unique identifier to identify the timesheet
start_time (datestamp)
Indicates the start time of the timesheet
end_time (datestamp)
Indicates the end time of the timesheet
utilisation (int)read only
Indicates the total utilisation percentage of the technician for the given period of time based on the technician operational hour
total_op_hrs (timediff)read only
Indicates the total operational hours worked by the technician for the timesheet period
total_non_op_hrs (timediff)read only
Indicates the total non operational hours worked by the technician for the timesheet period
More Attributes Expand all
status (timesheet_status)
Indicates the status of the timesheet. Allowed Values: Submitted, Rejected, Revoked, Re-Opened, Re-Submitted, Approved.
$ curl <service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}\
-X PUT\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
-d input_data='{
"timesheet": {
"status": {
"name": "Approved"
},
"comments": "Verified & Approved."
}
}'
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {
"timesheet": {
"status": {
"name": "Approved"
},
"comments": "Verified & Approved."
}
};
params = {"input_data": input_data};
response = invokeurl
[
url: url
type: PUT
parameters: params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}"
$headers = @{"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
$input_data = @'
{
"timesheet": {
"status": {
"name": "Approved"
},
"comments": "Verified & Approved."
}
}
'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method put -Body $data -Headers $headers
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{
"timesheet": {
"status": {
"name": "Approved"
},
"comments": "Verified & Approved."
}
}'''
data = urlencode({"input_data":input_data}).encode()
httprequest = Request(url, headers=headers,data=data, method="PUT")
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"timesheet": {
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "req1",
"id": "11478000000282023",
"department": null,
"first_name": "req1-org",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "May 19, 2025 12:29 PM",
"value": "1747637956082"
},
"start_time": {
"display_value": "May 11, 2025",
"value": "2025-05-11"
},
"comments": "Verified & Approved.",
"total_non_op_hrs": {
"hours": "33",
"minutes": "32",
"value": "120720000"
},
"end_time": {
"display_value": "May 17, 2025",
"value": "2025-05-17"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000964001",
"total_op_hrs": {
"hours": "6",
"minutes": "46",
"value": "24360000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Approved",
"id": "11478000000751009"
},
"utilisation": 111
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Get Timesheet
This operation helps to get a Timesheet.
Url
<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}
Attributes
id (long)
Unique identifier to identify the timesheet
start_time (datestamp)
Indicates the start time of the timesheet
end_time (datestamp)
Indicates the end time of the timesheet
utilisation (int)read only
Indicates the total utilisation percentage of the technician for the given period of time based on the technician operational hour
total_op_hrs (timediff)read only
Indicates the total operational hours worked by the technician for the timesheet period
total_non_op_hrs (timediff)read only
Indicates the total non operational hours worked by the technician for the timesheet period
More Attributes Expand all
status (timesheet_status)
Indicates the status of the timesheet. Allowed Values: Submitted, Rejected, Revoked, Re-Opened, Re-Submitted, Approved.
$ curl -G <service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}\
-X GET\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
response = invokeurl
[
url: url
type: GET
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$response = Invoke-RestMethod -Uri $url -Method get -Headers $headers
$response
#Python version - 3.8
#This script requires requests module installed in python.
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet/{timesheet_id}"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
httprequest = Request(url, headers=headers)
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"timesheet": {
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "May 15, 2025 12:19 PM",
"value": "1747291774119"
},
"start_time": {
"display_value": "Apr 13, 2025",
"value": "2025-04-13"
},
"comments": null,
"total_non_op_hrs": {
"hours": "49",
"minutes": "43",
"value": "178980000"
},
"end_time": {
"display_value": "Apr 19, 2025",
"value": "2025-04-19"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000954001",
"total_op_hrs": {
"hours": "18",
"minutes": "0",
"value": "64800000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Submitted",
"id": "11478000000751007"
},
"utilisation": 188
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Get List Timesheet
This operation helps to get all Timesheets.
Url
<service domain|custom domain>/app/<portal>/api/v3/timesheet
Attributes
id (long)
Unique identifier to identify the timesheet
start_time (datestamp)
Indicates the start time of the timesheet
end_time (datestamp)
Indicates the end time of the timesheet
utilisation (int)read only
Indicates the total utilisation percentage of the technician for the given period of time based on the technician operational hour
total_op_hrs (timediff)read only
Indicates the total operational hours worked by the technician for the timesheet period
total_non_op_hrs (timediff)read only
Indicates the total non operational hours worked by the technician for the timesheet period
More Attributes Expand all
status (timesheet_status)
Indicates the status of the timesheet. Allowed Values: Submitted, Rejected, Revoked, Re-Opened, Re-Submitted, Approved.
$ curl -G <service domain|custom domain>/app/<portal>/api/v3/timesheet\
-X GET\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
--data-urlencode input_data='{}'
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {};
params = {"input_data":input_data};
response = invokeurl
[
url: url
type: GET
parameters:params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$input_data = @'{}'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method get -Body $data -Headers $headers
$response
#Python version - 3.8
#This script requires requests module installed in python.
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/timesheet"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{}'''
url += "?" + urlencode({"input_data":input_data})
httprequest = Request(url, headers=headers)
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"response_status": [
{
"status_code": 2000,
"status": "success"
}
],
"timesheets": [
{
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "Mar 11, 2025 03:12 PM",
"value": "1741686147870"
},
"start_time": {
"display_value": "Mar 2, 2025",
"value": "2025-03-02"
},
"comments": null,
"total_non_op_hrs": {
"hours": "0",
"minutes": "0",
"value": "0"
},
"end_time": {
"display_value": "Mar 8, 2025",
"value": "2025-03-08"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000806040",
"total_op_hrs": {
"hours": "45",
"minutes": "0",
"value": "162000000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Submitted",
"id": "11478000000751007"
},
"utilisation": 125
},
{
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "Apr 28, 2025 11:23 AM",
"value": "1745819610302"
},
"start_time": {
"display_value": "Apr 20, 2025",
"value": "2025-04-20"
},
"comments": "Comments",
"total_non_op_hrs": {
"hours": "45",
"minutes": "0",
"value": "162000000"
},
"end_time": {
"display_value": "Apr 26, 2025",
"value": "2025-04-26"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000911031",
"total_op_hrs": {
"hours": "27",
"minutes": "0",
"value": "97200000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Submitted",
"id": "11478000000751007"
},
"utilisation": 200
},
{
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "May 12, 2025 08:16 PM",
"value": "1747061216921"
},
"start_time": {
"display_value": "May 4, 2025",
"value": "2025-05-04"
},
"comments": "Verified and Approved.",
"total_non_op_hrs": {
"hours": "52",
"minutes": "41",
"value": "189660000"
},
"end_time": {
"display_value": "May 10, 2025",
"value": "2025-05-10"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000942138",
"total_op_hrs": {
"hours": "18",
"minutes": "0",
"value": "64800000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Approved",
"id": "11478000000751009"
},
"utilisation": 196
},
{
"approver": {
"email_id": "john@zylker.com",
"is_technician": false,
"sms_mail": null,
"mobile": "",
"last_name": "",
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": null,
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": "",
"employee_id": null,
"name": "John",
"id": "11478000000282023",
"is_vip_user": false,
"department": null,
"first_name": "John",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"created_time": {
"display_value": "May 15, 2025 12:19 PM",
"value": "1747291774119"
},
"start_time": {
"display_value": "Apr 13, 2025",
"value": "2025-04-13"
},
"comments": null,
"total_non_op_hrs": {
"hours": "49",
"minutes": "43",
"value": "178980000"
},
"end_time": {
"display_value": "Apr 19, 2025",
"value": "2025-04-19"
},
"technician": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"id": "11478000000210001"
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"id": "11478000000275812"
}
},
"id": "11478000000954001",
"total_op_hrs": {
"hours": "18",
"minutes": "0",
"value": "64800000"
},
"created_by": {
"email_id": "mathew@zylker.com",
"is_technician": true,
"sms_mail": null,
"mobile": null,
"last_name": null,
"user_scope": "internal_user",
"sms_mail_id": null,
"cost_per_hour": "60",
"site": {
"deleted": false,
"name": "Base Site",
"id": "11478000000210001",
"is_default": true,
"customer": {
"id": "11478000000275812"
}
},
"phone": null,
"employee_id": null,
"name": "Mathew",
"id": "11478000000276451",
"is_vip_user": false,
"department": null,
"first_name": "Mathew",
"job_title": null,
"customer": {
"name": "Zylker - MSP",
"id": "11478000000275812",
"is_msp": true,
"deleted_time": null
}
},
"status": {
"editable": false,
"name": "Submitted",
"id": "11478000000751007"
},
"utilisation": 188
}
],
"list_info": {
"has_more_rows": false,
"row_count": 4
}
}