---
title: "Update time activities"
method: PUT
path: "/time-clock/v1/time-clocks/{timeClockId}/time-activities"
tags: ["Time Clock:v1:TimeClocks:TimeClock:TimeActivities"]
---

# Update time activities

`PUT /time-clock/v1/time-clocks/{timeClockId}/time-activities`

Update time activities for users assigned to a specific time clock. Time activities can include adjustments to shifts and/or manual breaks.

## Path parameters

- `timeClockId` integer, required — The unique identifier of the time clock

## Request body

- TimeActivitiesUpdateRequestList
  - `timeActivities` UserTimeActivitiesUpdateRequest[], required — List of time activities of the users
    - `userId` integer, required — The user ID of the time activity
    - `shifts` TimeActivityShiftUpdateRequest[], required — The shifts to update
      - `id` string, required — The ID of the time activity associated with the time clock
      - `start` TimestampWithTimezoneRequest
        - `timestamp` integer, required — The timestamp in Unix format (in seconds)
        - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
      - `end` TimestampWithTimezoneRequest
        - `timestamp` integer, required — The timestamp in Unix format (in seconds)
        - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
      - `employeeNote` string — Employee note providing additional details
      - `managerNote` string — Manager note providing additional details
      - `jobId` string — The job ID to associate with the shift (if the shift remains under the same job leave it empty)
      - `subJobId` string — The sub-job ID to associate with the job (if the sub-job remains under the same parent job update only the sub-job ID)
    - `manualbreaks` TimeActivityManualBreakUpdateRequest[] — The breaks to update
      - `id` string, required — The ID of the time activity associated with the time clock
      - `start` TimestampWithTimezoneRequest
        - `timestamp` integer, required — The timestamp in Unix format (in seconds)
        - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
      - `end` TimestampWithTimezoneRequest
        - `timestamp` integer, required — The timestamp in Unix format (in seconds)
        - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
      - `employeeNote` string — Employee note providing additional details
      - `managerNote` string — Manager note providing additional details
      - `manualBreakId` string — The manual break ID to associate with the break

## Response `200`

Successful Response

- APIResponseTimeActivitiesUpdateResponse
  - `requestId` string
  - `data` TimeActivitiesUpdateResponse, required
    - `timeActivitiesByUsers` UserTimeActivity[], required — The time activities
      - `userId` integer, required — The ID of the user
      - `shifts` ShiftActivityResponse[], required — The shifts
        - `id` string, required — The unique identifier of the time clock
        - `managerNote` string — The manager note providing additional details
        - `employeeNote` string — The employee note providing additional details
        - `start` TimeActivityTimePointResponse, required
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `end` TimeActivityTimePointResponse
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `createdAt` integer — The creation time of the time activity
        - `modifiedAt` integer — The last modification time of the time activity
        - `jobId` string — The ID of the job
        - `subJobId` string — The ID of the sub job
        - `schedulerShiftId` string — The unique identifier of the shift from the schedule, if it exists.
        - `shiftAttachments` GeneralActivityShiftAttachmentResponse[] — The shift attachments
          - `shiftAttachmentId` string, required — The ID of the shift attachment
          - `attachment` GeneralActivityShiftAttachmentValueResponse, required
            - `itemId` string — The ID of the dropdown list item
            - `freeText` string — The value of the shift attachment of type free text
            - `number` number — The value of the shift attachment of type number
            - `fileName` string — The name of the file in a shift attachment of type file
            - `fileUrl` string — The URL of the file in a shift attachment of type file
            - `files` ActivityFileResponse[] — The value of the shift attachment of type files
              - …
            - `images` string[] — The value of the shift attachment of type images
            - `image` string — The value of the shift attachment of type signature
        - `isAutoClockOut` boolean — Indicates whether the user was auto clocked out from the shift
      - `manualBreaks` ManualBreakActivityResponse[], required — The manual breaks
        - `id` string, required — The unique identifier of the time clock
        - `managerNote` string — The manager note providing additional details
        - `employeeNote` string — The employee note providing additional details
        - `start` TimeActivityTimePointResponse, required
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `end` TimeActivityTimePointResponse
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `createdAt` integer — The creation time of the time activity
        - `modifiedAt` integer — The last modification time of the time activity
        - `manualBreakId` string, required — The ID of the manual break
        - `isAutoClockOut` boolean — Indicates whether the user was auto clocked out from the shift
      - `timeOffs` TimeOffActivityResponse[] — The time offs
        - `id` string, required — The unique identifier of the time clock
        - `managerNote` string — The manager note providing additional details
        - `employeeNote` string — The employee note providing additional details
        - `start` TimeActivityTimePointResponse, required
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `end` TimeActivityTimePointResponse
          - `timestamp` integer, required — The timestamp in Unix format (in seconds)
          - `timezone` string, required — The timezone in Tz format (e.g. America/New_York)
          - `locationData` GpsData
            - `address` string — The address associated with the GPS data.
            - `longitude` number — The longitude coordinate.
            - `latitude` number — The latitude coordinate.
          - `geofenceId` string — The ID of the geofence the user was inside when this punch was recorded. None if the punch was outside any configured geofence.
          - `source` PunchSourceResponse
            - `id` string — Unique identifier of the source (for NFC or geofence-based sources)
            - `type` 'autoClockOut' | 'nfc' | 'mobile' | 'pc' | 'kiosk' | 'api' | 'admin', required — An enumeration.
            - `mode` 'dailyLimit' | 'hourLimit' | 'schedulerShiftEnded' | 'geofenceExit' | 'disabledGps' | 'disabledGpsPermission' — An enumeration.
            - `name` string — Human-readable name of the source (for NFC or geofence-based sources)
        - `createdAt` integer — The creation time of the time activity
        - `modifiedAt` integer — The last modification time of the time activity
        - `policyTypeId` string, required — The ID of the policy type
        - `duration` TimeOffDurationResponse, required
          - `value` number, required — The value of the duration
          - `units` 'hours' | 'days', required — An enumeration.
        - `isAllDay` boolean, required — Indicates whether the time off is all day

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/connecteam/apis/connecteam-api-documentation.md) · [All operations](https://skmtc.net/connecteam/apis/connecteam-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/connecteam/connecteam-api-documentation/revisions/d8f7f302222e/schema)
