> ## Documentation Index
> Fetch the complete documentation index at: https://learn.social.plus/llms.txt
> Use this file to discover all available pages before exploring further.

# Unread Status Overview

> Choose the correct SDK APIs for chat unread counts, read status, delivery status, and receipt sync.

Unread status is the SDK surface for showing unread counts, marking messages read or delivered, and keeping receipt state current while a chat screen is active.

## Capability Map

| Capability              | Use it for                                                       | SDK page                                             |
| ----------------------- | ---------------------------------------------------------------- | ---------------------------------------------------- |
| Channel unread count    | Channel badges, total chat badge, mention indicators.            | [Channel Unread Count](./channel-unread-count)       |
| Message read status     | Mark messages read and inspect read count fields.                | [Message Read Status](./message-read-status)         |
| Message delivery status | Mark messages delivered and query receipt users where supported. | [Message Delivery Status](./message-delivery-status) |
| Message receipt sync    | Subscribe to receipt updates for the active subchannel.          | [Message Receipt Sync](./message-receipt-sync)       |

## Platform Coverage

| Capability                       | TypeScript | iOS       | Android   | Flutter     |
| -------------------------------- | ---------- | --------- | --------- | ----------- |
| Per-channel unread fields        | Supported  | Supported | Supported | Supported   |
| Total channel unread observer    | Supported  | Supported | Supported | Supported   |
| `message.markRead()`             | Supported  | Supported | Supported | Supported   |
| Mark delivered                   | Supported  | Supported | Supported | Not exposed |
| Query read users                 | Supported  | Supported | Supported | Not exposed |
| Query delivered users            | Supported  | Supported | Supported | Not exposed |
| Explicit receipt sync start/stop | Supported  | Supported | Supported | Not exposed |

<Info>
  Platform gaps are intentional documentation facts, not missing code snippets. Add a Flutter snippet for delivered users or receipt sync only after the Flutter SDK exposes a public API for that operation.
</Info>

## Implementation Shape

<CardGroup cols={2}>
  <Card title="Chat List" icon="list">
    Use channel unread fields, total unread observers, mention flags, and message previews.
  </Card>

  <Card title="Active Chat Screen" icon="message">
    Start receipt sync where supported, render messages, and call `message.markRead()` when messages are seen.
  </Card>

  <Card title="Sender Feedback" icon="check-double">
    Use read and delivered counts, then query receipt users where the platform exposes those APIs.
  </Card>

  <Card title="Lifecycle Cleanup" icon="rotate">
    Stop receipt sync when a screen closes or switches to a different subchannel.
  </Card>
</CardGroup>

## Data Ownership

| Data                          | Source                                                 |
| ----------------------------- | ------------------------------------------------------ |
| `unreadCount` / `isMentioned` | Channel or subchannel model returned by the SDK.       |
| Total unread count            | SDK aggregate unread observer for the current user.    |
| Read and delivered counts     | Message model returned by the SDK.                     |
| Read and delivered user lists | Receipt-user query APIs where supported.               |
| Receipt sync state            | Explicit subchannel receipt-sync APIs where supported. |

## Related Topics

<CardGroup cols={3}>
  <Card title="Message Preview" href="/social-plus-sdk/chat/engagement-features/message-preview" icon="message">
    Show latest-message preview data beside unread state.
  </Card>

  <Card title="Query Messages" href="/social-plus-sdk/chat/messaging-features/messages/query-and-filter-messages" icon="list">
    Load message models before marking messages read.
  </Card>

  <Card title="Query Channels" href="/social-plus-sdk/chat/conversation-management/channels/query-channels" icon="comments">
    Load channel models for unread count and preview fields.
  </Card>
</CardGroup>
