Time & Attendance
Punches and corrections, timesheets, labor rules, pay periods, payroll export and time off.
For how this area works day to day, see the Time & attendance guide.
Webhook events: punch.received, punch.corrected, punch.exception Planned, timesheet.approved, timesheet.rejected, pay_period.locked, time_off.requested, time_off.approved, time_off.rejected. See Webhooks.
All paths are relative to /api/v1. Key is the scope an integration key needs, People the permission a signed-in person or personal key needs, and Feature the feature switch the endpoint belongs to. See how to read this reference.
- GET
/labor-rule-setsList labor rule sets
Keytime:readPeopletimesheets.readFeaturetime - POST
/labor-rule-setsCreate a labor rule set
Keytime:writePeoplelabor_rules.manageFeaturetime - GET
/labor-rule-sets/{id}Get a labor rule set
Keytime:readPeopletimesheets.readFeaturetime - PATCH
/labor-rule-sets/{id}Update a labor rule set (partial)
Keytime:writePeoplelabor_rules.manageFeaturetime - GET
/pay-periodsList pay periods (newest first)
Keypayroll:readPeopletimesheets.readFeaturetime - POST
/pay-periodsCreate a pay period
Keypayroll:writePeoplepay_periods.lockFeaturetime - GET
/pay-periods/{id}Get a pay period
Keypayroll:readPeopletimesheets.readFeaturetime - GET
/pay-periods/{id}/exportExport hours for payroll
Keypayroll:readPeoplepayroll.exportFeaturetime.payroll_export - POST
/pay-periods/{id}:lockLock a pay period (final payroll approval)
Keypayroll:writePeoplepay_periods.lockFeaturetime - GET
/punch-correctionsList punch corrections
Keytime:readPeoplepunches.correctFeaturetime - POST
/punch-corrections/{id}:approveApprove a punch correction
Keytime:writePeoplepunches.correctFeaturetime - POST
/punch-corrections/{id}:rejectReject a punch correction
Keytime:writePeoplepunches.correctFeaturetime - POST
/time-off/adjustmentsAdd or deduct time-off hours (accruals, corrections)
Keytime:writePeopletime_off.approveFeaturetime.time_off - GET
/time-off/balancesTime-off balances per employee and type
Keytime:readPeopletime_off.readFeaturetime.time_off - GET
/time-off/requestsList time-off requests
Keytime:readPeopletime_off.readFeaturetime.time_off - POST
/time-off/requestsRequest time off
Keytime:writePeopletime_off.approveFeaturetime.time_off - POST
/time-off/requests/{id}:approveApprove a time-off request (deducts the balance)
Keytime:writePeopletime_off.approveFeaturetime.time_off - POST
/time-off/requests/{id}:cancelCancel a time-off request (restores the balance if it was approved)
Keytime:writePeopletime_off.approveFeaturetime.time_off - POST
/time-off/requests/{id}:rejectReject a time-off request
Keytime:writePeopletime_off.approveFeaturetime.time_off - GET
/time-off/typesList time off types
Keytime:readPeopleanyoneFeaturetime.time_off - POST
/time-off/typesCreate a time off type
Keytime:writePeoplesettings.manageFeaturetime.time_off - GET
/time-off/types/external/{externalId}Get a time off type by external ID
Keytime:readPeopleanyoneFeaturetime.time_off - PUT
/time-off/types/external/{externalId}Create or replace a time off type by external ID
Keytime:writePeoplesettings.manageFeaturetime.time_off - GET
/time-off/types/{id}Get a time off type
Keytime:readPeopleanyoneFeaturetime.time_off - PATCH
/time-off/types/{id}Update a time off type (partial)
Keytime:writePeoplesettings.manageFeaturetime.time_off - DELETE
/time-off/types/{id}Archive a time off type
Keytime:writePeoplesettings.manageFeaturetime.time_off - GET
/time/punchesList punches
Keytime:readPeoplepunches.readFeaturetime - POST
/time/punches:batchSend punches in bulk
Keytime:writePeoplenot allowedFeaturetime - GET
/timesheetsList timesheets
Keytime:readPeopletimesheets.readFeaturetime - GET
/timesheets/{id}Get a timesheet with daily detail and exceptions
Keytime:readPeopletimesheets.readFeaturetime - POST
/timesheets/{id}:approveApprove a timesheet (manager step)
Keytime:writePeopletimesheets.approveFeaturetime - POST
/timesheets/{id}:rejectReject a timesheet
Keytime:writePeopletimesheets.approveFeaturetime - POST
/timesheets:buildBuild or refresh timesheets from punches
Keytime:writePeopletimesheets.approveFeaturetime