---
title: "Mark Read"
method: POST
path: "/api/v1/notifications/mark-read"
tags: ["notifications"]
---

# Mark Read

`POST /api/v1/notifications/mark-read`

Mark notification events as read for current user.

Provide EITHER notification_ids (list of up to 100 UUIDs) OR before (timestamp).
workflow_id filter is only valid with 'before' mode.

Target performance: batch of 100 < 100ms (SC-015).

## Headers

- `unstructured-api-key` string, nullable

## Request body

- MarkReadRequest — Request to mark notifications as read. Provide ONE of: notification_ids, before, or mark_all (mutually exclusive). workflow_id is valid with 'before' or 'mark_all'.
  - `notification_ids` string[], nullable — Specific notification IDs to mark as read (max 100)
  - `before` string, date-time, nullable — Mark all notifications created before this ISO 8601 timestamp as read
  - `mark_all` boolean — Mark all unread notifications as read (can combine with workflow_id)
  - `workflow_id` string, uuid, nullable — Filter by workflow (only valid with 'before' or 'mark_all')

## Response `200`

Successful Response

- MarkReadResponse — Response for mark-as-read operation.
  - `marked_count` integer, required — Number of events newly marked as read

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/unstructuredapp/apis/platform-api.md) · [All operations](https://skmtc.net/unstructuredapp/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/unstructuredapp/platform-api/versions/41676641a27c/schema)
