---
title: "Marks all your notifications as read"
method: PUT
path: "/notifications/mark-all-read"
tags: ["Notifications"]
---

# Marks all your notifications as read

`PUT /notifications/mark-all-read`

Marks every unread notification (read_at is null) as read. Already-read notifications keep their original timestamp. read_at defaults to the current time when omitted.

## Request body

- UpdatePushNotificationRequest
  - `read_at` string, date-time — read_at
  - `read_on` 'app' | 'planner' | 'api', nullable — Where the notification was read. Defaults to "api" for the Planner API.

## Response `200`

The request was successful.

## Other responses

- `401` — The request lacks valid authentication credentials.
- `403` — The token is valid but lacks the permission for this action.
- `422` — The request was well-formed but contains semantic errors (validation failed).
- `500` — An unexpected error occurred on the server (e.g. a requested relation does not exist).

---

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