---
title: "Get time entry"
method: GET
path: "/time-entry/{id}"
tags: ["Time Entries"]
---

# Get time entry

`GET /time-entry/{id}`

Get a single time entry by ID.

## Path parameters

- `id` string, required

## Response `200`

Time entry details

- TimeEntry
  - `id` string, required
  - `taskId` string, required
  - `userId` string, nullable, required — Null once the user who logged the time has been removed.
  - `description` string, nullable, required
  - `startTime` string, date-time, required
  - `endTime` string, date-time, nullable, required — Null while the timer is still running.
  - `duration` number, nullable, required — Elapsed seconds, filled in once the entry has an endTime.
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required

## Other responses

- `400` — Unknown entry, or its workspace could not be determined
- `401` — Missing or invalid credentials
- `403` — No access to the entry's workspace

## Changes

- **2026-08-24** `08bbb5bedb5d` — 1 breaking, 4 info
  - the response property `endTime` became nullable for the status `200`
  - added the non-success response with the status `400`
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
  - …1 more
- **2026-07-11** `32cece1ebe43` — 3 breaking, 1 info
  - the `createdAt` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - the `endTime` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - the `startTime` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - added the required property `updatedAt` to the response with the `200` status
- **2026-03-05** `c45ef22a736c` — 3 breaking, 3 info
  - the response property `description` became nullable for the status `200`
  - the response property `duration` became nullable for the status `200`
  - the response property `userId` became nullable for the status `200`
  - response property `description` list-of-types was narrowed by removing types `null` from media type `application/json` of response `200`
  - …2 more
- …earlier changes not shown

[Full history](https://skmtc.dev/usekaneo/apis/kaneo-api/changes/time-entry/:id/get.md)

---

[API](https://skmtc.dev/usekaneo/apis/kaneo-api.md) · [All operations](https://skmtc.dev/usekaneo/apis/kaneo-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/usekaneo/kaneo-api/revisions/9d1da42c10ce/schema)
