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

# Mark Read

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

## Request

- Base URL: `https://platform-api.transform.unstructured.io` (the document declares no server; this is the origin it was published from)
- URL: `https://platform-api.transform.unstructured.io/api/v1/notifications/mark-read`
- Auth: none declared
- TypeScript: <https://skmtc.dev/unstructured/apis/platform-api/docs/api/v1/notifications/mark-read/post.ts> (a function with typed inputs; its response is checked against the schema)

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.dev/unstructured/apis/platform-api.md) - [All operations](https://skmtc.dev/unstructured/apis/platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/unstructured/apis/platform-api/revisions/16b4542093db?raw)
