---
title: "Mark notification read"
method: PATCH
path: "/notification/{id}/read"
tags: ["Notifications"]
---

# Mark notification read

`PATCH /notification/{id}/read`

Mark one notification as read. Scoped to the current user, so another user's notification is not found.

## Path parameters

- `id` string, required

## Response `200`

The updated notification

- Notification
  - `id` string, required
  - `userId` string, required
  - `title` string, nullable, required
  - `content` string, nullable, required — Free-text body. Null for generated notifications, whose text the client renders from type and eventData.
  - `type` string, required — One of: info, task_created, workspace_created, task_status_changed, task_assignee_changed, time_entry_created, due_date_reminder, task_overdue, task_mention, task_comment.
  - `eventData` unknown
  - `isRead` boolean, nullable, required
  - `resourceId` string, nullable, required — The id of the task or workspace the notification points at.
  - `resourceType` string, nullable, required — `task` or `workspace`.
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required

## Other responses

- `401` — Missing or invalid credentials
- `404` — Notification not found

## Changes

- **2026-08-24** `08bbb5bedb5d` — 5 breaking, 16 info
  - the response property `isRead` became nullable for the status `200`
  - the response property `resourceId` became nullable for the status `200`
  - the response property `resourceType` became nullable for the status `200`
  - the response property `eventData` became optional for the status `200`
  - …17 more
- **2026-07-11** `32cece1ebe43` — 4 breaking, 3 warning, 2 info
  - the response property `title` became nullable for the status `200`
  - the `createdAt` response's property type/format changed from ``/`` to `string`/`date-time` for status `200`
  - the `resourceType` response's property type/format changed from ``/`` to `string`/`` for status `200`
  - the `type` response's property type/format changed from ``/`` to `string`/`` for status `200`
  - …5 more
- **2026-03-05** `c45ef22a736c` — 1 breaking, 1 info
  - the response property `content` became nullable for the status `200`
  - response property `content` list-of-types was narrowed by removing types `null` from media type `application/json` of response `200`
- **2026-03-04** `298877d6a79a` — 3 breaking
  - response property `content` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `resourceType` response's property type/format changed from `string`/`` to ``/`` for status `200`
  - the `type` response's property type/format changed from `string`/`` to ``/`` for status `200`
- …earlier changes not shown

[Full history](https://skmtc.dev/usekaneo/apis/kaneo-api/changes/notification/:id/read/patch.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/7ccee4eec682/schema)
