RoomDirectoryService
Chatto exposes this service below /api/connect.
Shared message and enum definitions are documented in Shared Types And Enums.
RoomDirectoryService
Section titled “RoomDirectoryService”Reads room directory data.
ListRooms
Section titled “ListRooms”Lists rooms visible to the current user. Channel rooms are non-archived rooms visible through membership or room.list. DM rooms are membership-only and empty DM conversations are omitted. Results are returned as a finite navigation snapshot.
POST /api/connect/chatto.api.v1.RoomDirectoryService/ListRoomsInput: ListRoomsRequest
Section titled “Input: ListRoomsRequest”Request for rooms visible to the current user.
| Field | Type | Description |
|---|---|---|
scope | RoomDirectoryScope | Which room kinds to include. Defaults to all. |
Result: ListRoomsResponse
Section titled “Result: ListRoomsResponse”Finite snapshot of rooms visible to the current user.
| Field | Type | Description |
|---|---|---|
rooms | repeated RoomWithViewerState | Rooms matching the requested scope. |
ListRoomGroups
Section titled “ListRoomGroups”Lists ordered channel room groups and sidebar items visible to the current user as a finite navigation snapshot. Hidden room entries are omitted. Archived room entries are omitted.
POST /api/connect/chatto.api.v1.RoomDirectoryService/ListRoomGroupsInput: ListRoomGroupsRequest
Section titled “Input: ListRoomGroupsRequest”Request for ordered room groups visible to the current user.
Result: ListRoomGroupsResponse
Section titled “Result: ListRoomGroupsResponse”Finite snapshot of ordered room groups visible to the current user.
| Field | Type | Description |
|---|---|---|
groups | repeated RoomGroup | Channel room groups in sidebar order. |
GetRoomGroup
Section titled “GetRoomGroup”Returns one ordered room group by ID. Hidden room entries are omitted. Archived room entries are omitted. Returns NOT_FOUND when the room group does not exist.
POST /api/connect/chatto.api.v1.RoomDirectoryService/GetRoomGroupInput: GetRoomGroupRequest
Section titled “Input: GetRoomGroupRequest”Request for one ordered room group visible to the current user.
| Field | Type | Description |
|---|---|---|
group_id | string | Required. Room group to resolve. |
Result: GetRoomGroupResponse
Section titled “Result: GetRoomGroupResponse”One ordered room group visible to the current user.
| Field | Type | Description |
|---|---|---|
group | RoomGroup | Resolved room group. Hidden and archived room entries are omitted. |
BatchGetRoomGroups
Section titled “BatchGetRoomGroups”Returns ordered room groups for a set of stable group IDs. Hidden room entries are omitted. Archived room entries are omitted. Unknown groups are omitted. Results preserve first-seen request order and repeated IDs are de-duplicated.
POST /api/connect/chatto.api.v1.RoomDirectoryService/BatchGetRoomGroupsInput: BatchGetRoomGroupsRequest
Section titled “Input: BatchGetRoomGroupsRequest”Request visible room groups by stable group ID.
| Field | Type | Description |
|---|---|---|
group_ids | repeated string | Required room group IDs. Unknown groups are omitted from the response. |
Result: BatchGetRoomGroupsResponse
Section titled “Result: BatchGetRoomGroupsResponse”Visible room group batch response for direct group hydration.
| Field | Type | Description |
|---|---|---|
groups | repeated RoomGroup | Resolved room groups in first-seen request order. |
GetRoom
Section titled “GetRoom”Returns one visible room by ID. DM rooms require membership. Returns NOT_FOUND when the room does not exist and PERMISSION_DENIED when the room exists but is hidden from the caller.
POST /api/connect/chatto.api.v1.RoomDirectoryService/GetRoomInput: GetRoomRequest
Section titled “Input: GetRoomRequest”Request for one room visible to the current user.
| Field | Type | Description |
|---|---|---|
room_id | string | Required. Room to resolve. |
Result: GetRoomResponse
Section titled “Result: GetRoomResponse”Room visible to the current user.
| Field | Type | Description |
|---|---|---|
room | RoomWithViewerState | Resolved room and viewer state. |
BatchGetRooms
Section titled “BatchGetRooms”Returns visible rooms for a set of stable room IDs. This is a direct hydration API, so visible archived rooms may be returned. Unknown rooms and rooms hidden from the caller are omitted. Results preserve first-seen request order and repeated IDs are de-duplicated.
POST /api/connect/chatto.api.v1.RoomDirectoryService/BatchGetRoomsInput: BatchGetRoomsRequest
Section titled “Input: BatchGetRoomsRequest”Request visible rooms by stable room ID.
| Field | Type | Description |
|---|---|---|
room_ids | repeated string | Required room IDs. Unknown rooms and rooms hidden from the caller are omitted from the response. Archived rooms may be returned when the caller can still refresh them directly. |
Result: BatchGetRoomsResponse
Section titled “Result: BatchGetRoomsResponse”Visible room batch response for direct room hydration.
| Field | Type | Description |
|---|---|---|
rooms | repeated RoomWithViewerState | Resolved rooms in first-seen request order. |