New API version v7.12 has been released! 🎉
REST DocumentationAttendancesPATCH Update attendance

Update an attendance

Use this endpoint to change an existing attendance. The booking rules are checked before writing; violations come back as 422 with per-field messages.

Request

PATCH /api/v1/attendances/:id
curl --request PATCH \
     --url 'https://www.zep-online.de/zepinstanz/next/api/v1/attendances/1234' \
     --header 'Accept: application/json' \
     --header 'Authorization: Bearer {token}' \
     --header 'Content-Type: application/json' \
     --data '{
  "employee_id": "max.mustermann",
  "date": "2026-07-24",
  "from": "09:00:00",
  "to": "12:30:00",
  "project_id": 16,
  "project_task_id": 7,
  "activity_id": "im",
  "note": "Konzept überarbeitet"
}'

Parameters

  • id (integer, required): The ID of the attendance to change

Required fields

  • employee_id (string): The employee’s username
  • date (date | Y-m-d): The day of the booking
  • from (time | H:i:s): Start
  • to (time | H:i:s): End. 00:00:00 means end of day and counts towards the following day
  • project_id (integer): The project
  • project_task_id (integer): The project task
  • activity_id (string): The activity

Common reasons for rejection

The check matches the one in the ZEP core that the web interface, SOAP and Clock also pass through:

  • day in a closed month, past the approval date, or outside the recording period
  • non-working day or full-day holiday for that employee
  • day outside the employment period
  • day outside the runtime of the project, task or ticket
  • planned hours exceeded

Response

{
  "data": {
    "id": 1234,
    "date": "2026-07-24T00:00:00.000000Z",
    "from": "09:00:00",
    "to": "12:30:00",
    "end_date": "2026-07-24",
    "employee_id": "max.mustermann",
    "duration": 3.5,
    "note": "Konzept überarbeitet",
    "billable": true,
    "project_id": 16,
    "project_task_id": 7,
    "activity_id": "im",
    "created": "2026-07-24T12:31:00.000000Z",
    "modified": "2026-07-24T12:31:00.000000Z"
  }
}