NotificationService
Chatto exposes this service below /api/connect.
Shared message and enum definitions are documented in Shared Types And Enums.
NotificationService
Section titled “NotificationService”Reads and dismisses pending notifications for the authenticated viewer.
ListNotifications
Section titled “ListNotifications”Lists the authenticated viewer’s pending notifications.
POST /api/connect/chatto.api.v1.NotificationService/ListNotificationsInput: ListNotificationsRequest
Section titled “Input: ListNotificationsRequest”Request for the authenticated viewer’s pending notifications.
| Field | Type | Description |
|---|---|---|
page | PageRequest | Page request. Defaults to 50 results when absent or limit is zero. |
Result: ListNotificationsResponse
Section titled “Result: ListNotificationsResponse”Pending notification page.
| Field | Type | Description |
|---|---|---|
notifications | repeated NotificationItem | Page notifications, newest first. |
page | PageInfo | Page metadata. |
GetNotification
Section titled “GetNotification”Gets one pending notification. Returns NOT_FOUND when the notification is unknown or has been dismissed.
POST /api/connect/chatto.api.v1.NotificationService/GetNotificationInput: GetNotificationRequest
Section titled “Input: GetNotificationRequest”Request one pending notification for the authenticated viewer.
| Field | Type | Description |
|---|---|---|
notification_id | string | Required notification ID. |
Result: GetNotificationResponse
Section titled “Result: GetNotificationResponse”Pending notification response.
| Field | Type | Description |
|---|---|---|
notification | NotificationItem | Requested notification. |
BatchGetNotifications
Section titled “BatchGetNotifications”Gets pending notifications by ID.
POST /api/connect/chatto.api.v1.NotificationService/BatchGetNotificationsInput: BatchGetNotificationsRequest
Section titled “Input: BatchGetNotificationsRequest”Request pending notifications for a set of stable notification IDs.
| Field | Type | Description |
|---|---|---|
notification_ids | repeated string | Required notification IDs. Unknown or dismissed IDs are omitted from the response. |
Result: BatchGetNotificationsResponse
Section titled “Result: BatchGetNotificationsResponse”Batch pending notification response.
| Field | Type | Description |
|---|---|---|
notifications | repeated NotificationItem | Found notifications. The server preserves first-seen request order and de-duplicates repeated IDs. |
ListRoomNotifications
Section titled “ListRoomNotifications”Lists pending notifications for one room. Non-members receive an empty page.
POST /api/connect/chatto.api.v1.NotificationService/ListRoomNotificationsInput: ListRoomNotificationsRequest
Section titled “Input: ListRoomNotificationsRequest”Request for pending notifications scoped to one room.
| Field | Type | Description |
|---|---|---|
room_id | string | Required. Room whose notifications should be listed. |
page | PageRequest | Page request. Defaults to 50 results when absent or limit is zero. |
Result: ListRoomNotificationsResponse
Section titled “Result: ListRoomNotificationsResponse”Pending notification page scoped to one room.
| Field | Type | Description |
|---|---|---|
notifications | repeated NotificationItem | Page notifications, newest first. |
page | PageInfo | Page metadata. |
ListRoomNotificationCounts
Section titled “ListRoomNotificationCounts”Lists pending notification counts grouped by room as a finite snapshot.
POST /api/connect/chatto.api.v1.NotificationService/ListRoomNotificationCountsInput: ListRoomNotificationCountsRequest
Section titled “Input: ListRoomNotificationCountsRequest”Request for pending notification counts grouped by room.
Result: ListRoomNotificationCountsResponse
Section titled “Result: ListRoomNotificationCountsResponse”Finite snapshot of pending notification counts grouped by room.
| Field | Type | Description |
|---|---|---|
room_counts | repeated RoomNotificationCount | Counts for rooms with at least one pending notification. |
HasNotifications
Section titled “HasNotifications”Checks whether the authenticated viewer has any pending notifications.
POST /api/connect/chatto.api.v1.NotificationService/HasNotificationsInput: HasNotificationsRequest
Section titled “Input: HasNotificationsRequest”Request for a lightweight pending notification check.
Result: HasNotificationsResponse
Section titled “Result: HasNotificationsResponse”Lightweight pending notification check.
| Field | Type | Description |
|---|---|---|
has_notifications | bool | True when the authenticated viewer has at least one pending notification. |
DismissNotification
Section titled “DismissNotification”Dismisses one pending notification. Already-dismissed notifications are treated as idempotent success.
POST /api/connect/chatto.api.v1.NotificationService/DismissNotificationInput: DismissNotificationRequest
Section titled “Input: DismissNotificationRequest”Request to dismiss one pending notification.
| Field | Type | Description |
|---|---|---|
notification_id | string | Required. Notification to dismiss. |
Result: DismissNotificationResponse
Section titled “Result: DismissNotificationResponse”Result of dismissing one pending notification.
| Field | Type | Description |
|---|---|---|
dismissed | bool | True when the notification is no longer pending. |
DismissAllNotifications
Section titled “DismissAllNotifications”Dismisses all pending notifications.
POST /api/connect/chatto.api.v1.NotificationService/DismissAllNotificationsInput: DismissAllNotificationsRequest
Section titled “Input: DismissAllNotificationsRequest”Request to dismiss all pending notifications.
Result: DismissAllNotificationsResponse
Section titled “Result: DismissAllNotificationsResponse”Result of dismissing all pending notifications.
| Field | Type | Description |
|---|---|---|
dismissed_count | int32 | Number of notifications dismissed. |