---
title: "POST /v1/notifications/read-all"
method: POST
path: "/v1/notifications/read-all"
tags: ["Notifications"]
---

# POST /v1/notifications/read-all

`POST /v1/notifications/read-all`

## Request

- Base URL: `https://api.arbital.xyz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.arbital.xyz/v1/notifications/read-all`
- Auth: HTTP bearer

Atomically marks every owned notification admission at or below the live server-issued checkpoint read, including activity currently hidden or suppressed. Older activity remains read if it later becomes visible; activity admitted above the checkpoint stays unread, including on an older group. updated_activity_count reports only currently authorized, unsuppressed newly acknowledged admissions, so a hidden-only cutoff advance can return zero while advancing inbox_revision once. Repeating the same or an older cutoff does not change read state. List, count and target authorization remain current; unavailable required source visibility or a deadline failure rolls back the entire operation. Responses are private, no-store. Reviewed capability and migration gates still apply.

## Request body

- object
  - `through` string, uuid, required

## Response `200`

Authorized notification response

- NotificationReadAllV2
  - `unread_count` string, required
  - `inbox_revision` string, required
  - `read_watermark` string, uuid, required
  - `read_watermark_expires_at_unix_ms` integer, required
  - `acknowledged_through_revision` string, required: The committed recipient boundary resolved from the supplied owned checkpoint. All owned activity at or below it is acknowledged, including hidden activity; a previously higher cutoff is never lowered.
  - `updated_activity_count` string, required: Count of currently authorized, unsuppressed admissions newly acknowledged by this call. Excludes hidden admissions and is not a count of physical database row updates. May be zero while a higher cutoff advances inbox_revision.

## Other responses

- `400`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `401`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `404`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `409`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `410`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `413`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `503`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.

---

[API](https://skmtc.dev/arbital/apis/arbital-api.md) - [All operations](https://skmtc.dev/arbital/apis/arbital-api/llms.txt) - [OpenAPI document](https://skmtc.dev/arbital/apis/arbital-api/revisions/bb0185edf43a?raw)
