---
title: "Update Entry"
method: PATCH
path: "/v1/matters/{matter_id}/timekeeper/entries/{entry_id}"
tags: ["timekeeper"]
---

# Update Entry

`PATCH /v1/matters/{matter_id}/timekeeper/entries/{entry_id}`

## Request

- Base URL: `https://api.ender.au` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ender.au/v1/matters/{matter_id}/timekeeper/entries/{entry_id}`
- Auth: HTTP bearer

## Path parameters

- `entry_id` string, uuid, required
- `matter_id` string, uuid, required

## Headers

- `Idempotency-Key` string, required

## Request body

- UpdateOpenTimeEntry
  - `charging_rate_id` string, uuid, nullable
  - `matter_id` string, uuid, nullable
  - `expected_version` integer, required
  - `work_date` string, date, nullable
  - `task_category` 'assets' | 'creditors' | 'employees' | 'trade_on' | 'investigation' | 'dividend' | 'administration' | 'lost_time'
  - `task_subcategory_id` string, nullable
  - `template_source` TemplateSourceInput: The library entry and reviewed mapping that proposed a classification. Provenance reported by the editor, not authority: the reviewed pair is the entry's category and subcategory. A null default means the mapping was unresolved and the practitioner classified the entry themselves. Commands check the default against the taxonomy; reads tolerate a newer taxonomy's.
    - `library` 'corporate' | 'bankruptcy' | 'sbr', required
    - `template_id` string, required
    - `mapping_version` string, required
    - `default_subcategory_id` string, nullable
  - `absence_kind` 'annual_leave' | 'sick_leave' | 'personal_leave' | 'bereavement_leave' | 'public_holiday' | 'jury_duty' | 'medical_appointment' | 'staff_function': Lost Time excluded from productivity and utilisation; training is not.
  - `narrative` string, nullable
  - `duration_minutes` integer, nullable
  - `start_minute` integer, nullable

## Response `200`

Successful Response

- TimeEntryResult
  - `entry` TimeEntryCommandView, required
    - `id` string, uuid, required
    - `status` 'open' | 'posted' | 'superseded' | 'discarded', required
    - `version` integer, required
  - `replayed` boolean, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ender/apis/ender-backend.md) - [All operations](https://skmtc.dev/ender/apis/ender-backend/llms.txt) - [OpenAPI document](https://skmtc.dev/ender/apis/ender-backend/revisions/bf4373130521?raw)
