APIs
Login
URL = {{api_url}}/account/login
Request Type = POST
Request Header
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Content-Type = application/json
Body
{
"username": {username},
"password": {password}
}
Response
{
"status": true,
"data": {
"token": "{AUTH_TOKEN}"
},
"message": "Successfully logged in"
}
Get current User details
URL = {{api_url}}/account
Request Type = GET
Request Header
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Authorization = Bearer {{AUTH_TOKEN}}
Content-Type = application/json
Response
{
"status": true,
...
}
Timecard - Add Punch
URL = {{api_url}}/webclock/punch_v2 (for add punches only)
URL = {{api_url}}/webclock/punch_v3 (for overwrite punch add/update punches)
Request Type = POST
Request Header
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Authorization = Bearer {{AUTH_TOKEN}}
Content-Type = application/json
Body
punch_source_id = 5 (required)
datetime = punch datetime (required) ex = YYYY-MM-DD HH:MM:SS
auto_status_update_flag = (required)
possible values = 0,1
Clock Wares auto checkout logic => Post 0 if you want run the logic, 1 if skip auto-checkout logic
os_clockin_type = (required)
possible values =
0 => checkIN,
1 => checkOut,
2 => BreakOut,
3 => BreakIN
os_emp_account_id = [optional] #1
timeclock_os_emp_pin = employee timeclock pin [optional] #2
us_user_site_profile_id = site ID [optional] #3
us_user_site_code = site code [optional] #4
timeclock_device_id = device ID [optional] #5
timeclock_name = timeclock name [optional] #6
os_department_id = department ID [optional]
department_code = department code [optional]
os_clockio_work_code = workcode ID [optional]
verified = 1
geo = geo location array {"lat": XXX, "long": XXX} [optional]
--------------------------------------------------
#1, #2 = at least one required from both
#3, #4 = at least one required from both
#5, #6 = at least one required from both
Response
{
"status": true,
...
}
Timecard - Get Punch
URL = {{api_url}}/webclock/punches_v2
Request Type = POST
Request Headers
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Content-Type = application/json
Authorization = Bearer {{AUTH_TOKEN}}
Body
payperiod = start_datetime & end_datetime for employee punches (required) ex: 2018/12/01 - 2018/12/07
os_emp_account_id = unique ID for employee from Clock Wares DB [optional]
timeclock_os_emp_pin = employee timeclock pin [optional]
timeclock_name = timeclock name [optional]
record_processed_flag = Record Process Flag [optional]
# 0 => processing,
-1 => failed,
1 => processed,
3 => pending
Response
{
"status": true,
"data": [
{
"os_emp_account_id": "21160",
"timeclock_os_emp_pin": "1234",
"os_clockin_type": "1",
"datetime": "2018-09-06 02:35:00",
"os_department_id": "0",
"os_clockio_work_code": "0",
"us_user_site_profile_id": "",
"record_processed_flag": "3",
"geo": null,
"other_info_json": null,
"clock_timeclock_attendance_raw_data_id": "2439809",
"raw_log_json": {"status":1,"data":{"id":"XXXX",...}},
"deviceuuid": null,
"site_id": 0
},
{ ... }
],
"message": "Punches"
}
Employee - Get List
URL = {{api_url}}/employee
Request Type = POST
Request Headers
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Content-Type = application/json
Authorization = Bearer {AUTH_TOKEN}
Body
os_emp_account_id = unique ID for employee from Clock Wares DB [optional]
timeclock_os_emp_pin = employee timeclock pin [optional]
employee_ext_system_id = employee partner-id from Humanity, Intuit, BambooHR etc. [optional]
is_active = employee status filter 0=>in-active, 1=>active (default = 1)
department_code = department code [optional]
us_user_site_code = site/location code [optional]
timeclock_name = timeclock device name [optional]
page = current page (used for pagination), in one request 1000 records can be retrieved
Response
{
"status": true,
"data": [
{
"os_emp_account_id": "xxx", #unique ID for employee from Clock Wares DB
"os_emp_first_name": "xxx", #employee first name
"os_emp_middle_name": NULL, #employee middle name
"os_emp_last_name": "xxx", #employee last name
"os_emp_email": "xxx", #employee email address
"os_emp_phone": null, #employee phone number
"os_emp_fax": null, #employee fax number
"os_emp_address1": null, #employee address1
"os_emp_address2": null, #employee address2
"os_emp_city": null, #employee city
"os_emp_state": null, #employee state
"os_emp_country": null, #employee country
"os_emp_zip": null, #employee address zip
"os_emp_gender": null, #employee gender
"os_emp_hire_date": null, #employee hire date
"os_emp_biz_employee_number": null, #employee biz number
"timeclock_os_emp_pin": "35", #employee timeclock pin
"department_code": null, #employee dept code
"os_emp_ssn": null, #employee ssn number
"ext_system_emp_id": "3911160" #employee partner id
},
{...},
{...}
],
"message": "Success"
}
Device/Timeclock - Get Status
URL = {{api_url}}/webclock/device_status
Request Type = GET
Request Headers
X-Requested-With = XMLHttpRequest
APPKEY = mobilekey
Content-Type = application/json
Authorization = Bearer {AUTH_TOKEN}
Body
timeclock_name = "test_name"
Response
{
"status": true,
"data": {
"last_synch_on": "2018-09-01 15:10:21",
"timezone": "PST"
},
"message": "device status"
}