Time Tracking
Public API

Update Employee Enrollment

Changed on

Enables, disables, or reassigns a single employee's enrollment using JSON Merge Patch (RFC 7396) semantics: only the properties present in the body are applied and omitted properties are unchanged. Content-Type must be application/merge-patch+json. When the employee has no enrollment record yet and enabled is set to true, one is created. timezone and clockInId are read-only on this API. Reassigning an employee whose time tracking is currently off requires setting enabled to true in the same body, and configurationId and enabledOn cannot be combined with enabled: false.

OAuth Scopes: time_tracking:employees.write

patch/api/v1/time-tracking/employees/{employeeId}

Request

Path parameters

employeeIdinteger required

The employee ID.

Request body

enabledboolean

True to enable time tracking for the employee, false to disable it. Disabling retains the enrollment record for history.

configurationIdinteger nullable

The configuration to enroll the employee in. Null falls back to the company's GLOBAL configuration. Cannot be sent in the same body that sets enabled to false.

enabledOnstring date

Effective date for the enable, in YYYY-MM-DD format. Only honored while enabled is being set to true; defaults to today.

Example request

{
  "enabled": true,
  "configurationId": 3,
  "enabledOn": "2026-06-01"
}

Response

The updated employee time tracking enrollment.

idinteger

The ID of the enrollment record.

employeeIdinteger

The ID of the employee.

configurationIdinteger nullable

The ID of the time tracking configuration the employee is enrolled in. Null means the employee falls back to the company's GLOBAL configuration.

enabledboolean

Whether the employee is enrolled in time tracking.

enabledOnstring date nullable

The date time tracking was enabled for the employee, in YYYY-MM-DD format. Null if never enabled.

timezonestring nullable

The IANA timezone used for this employee's time tracking. Read-only on this API. Null when the employee has no enabled timezone.

clockInIdinteger nullable

The kiosk / badge clock-in ID for this employee. Unique per company. Read-only on this API.

createdAtstring date-time

ISO 8601 timestamp when the enrollment record was created.

updatedAtstring date-time nullable

ISO 8601 timestamp when the enrollment record was last updated.

Example response

{
  "id": 42,
  "employeeId": 101,
  "configurationId": 3,
  "enabled": true,
  "enabledOn": "2026-02-01",
  "timezone": "America/Denver",
  "clockInId": 2341,
  "createdAt": "2026-02-01T08:00:00Z",
  "updatedAt": "2026-02-01T08:00:00Z"
}

Changes