Skip to content

Mark a notification as read or sync its client_id

POST
/notifications/{id}/read
curl --request POST \
--url http://localhost:8000/api/v1/notifications/1/read \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "client_id": "245cb3df-df3a-428b-a908-e5f74b8d58a3:245cb3df-df3a-428b-a908-e5f74b8d58a4", "read_at": "2026-04-15T12:00:00Z" }'

Marks the notification as read using the supplied read_at (or now() if omitted). If only client_id is sent, the server records the client_id without changing read state, so the mobile sync can establish the link before the user opens the notification.

id
required
integer
Media type application/json
object
client_id

Client-generated identifier for offline sync. Optional.

string
Example
245cb3df-df3a-428b-a908-e5f74b8d58a3:245cb3df-df3a-428b-a908-e5f74b8d58a4
read_at

Timestamp the notification was read on the client. Optional. When omitted and client_id is also omitted, the server uses the current time. When omitted and client_id is present, read state is left unchanged.

string format: date-time

Notification marked as read or synced

Notification not found

Validation error