AdminRoomLayoutService
Chatto exposes this service below /api/connect.
Shared message and enum definitions are documented in Shared Types And Enums.
AdminRoomLayoutService
Section titled “AdminRoomLayoutService”Reads and mutates the server-admin room layout.
ListRoomGroups
Section titled “ListRoomGroups”Lists the editable room group layout. Requires role.manage and returns visible room entries, including archived rooms for administrative actions such as unarchiving.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/ListRoomGroupsInput: ListRoomGroupsRequest
Section titled “Input: ListRoomGroupsRequest”Request for the server-admin room group layout.
Result: ListRoomGroupsResponse
Section titled “Result: ListRoomGroupsResponse”Server-admin room group layout response.
| Field | Type | Description |
|---|---|---|
groups | repeated AdminRoomLayoutGroup | Ordered room groups, including archived rooms the caller can manage. |
CreateRoomGroup
Section titled “CreateRoomGroup”Creates a room group. Requires role.manage.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/CreateRoomGroupInput: CreateRoomGroupRequest
Section titled “Input: CreateRoomGroupRequest”Request to create a room group.
| Field | Type | Description |
|---|---|---|
name | string | Required group display name. |
description | string | Optional public group description. |
Result: CreateRoomGroupResponse
Section titled “Result: CreateRoomGroupResponse”Result of creating a room group.
| Field | Type | Description |
|---|---|---|
group | AdminRoomLayoutGroup | Created room group. |
UpdateRoomGroup
Section titled “UpdateRoomGroup”Updates a room group’s metadata. Requires role.manage.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/UpdateRoomGroupInput: UpdateRoomGroupRequest
Section titled “Input: UpdateRoomGroupRequest”Request to update a room group.
| Field | Type | Description |
|---|---|---|
group_id | string | Required room group ID. |
name | optional string | New group display name, when changing it. |
description | optional string | New public group description, when changing it. Empty clears the description. |
Result: UpdateRoomGroupResponse
Section titled “Result: UpdateRoomGroupResponse”Result of updating a room group.
| Field | Type | Description |
|---|---|---|
group | AdminRoomLayoutGroup | Updated room group. |
DeleteRoomGroup
Section titled “DeleteRoomGroup”Deletes an empty room group. Requires role.manage.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/DeleteRoomGroupInput: DeleteRoomGroupRequest
Section titled “Input: DeleteRoomGroupRequest”Request to delete an empty room group.
| Field | Type | Description |
|---|---|---|
group_id | string | Required room group ID. |
Result: DeleteRoomGroupResponse
Section titled “Result: DeleteRoomGroupResponse”Result of deleting a room group.
| Field | Type | Description |
|---|---|---|
deleted | bool | True when the room group was deleted. |
ReorderRoomGroups
Section titled “ReorderRoomGroups”Replaces the global room group order. Requires role.manage.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/ReorderRoomGroupsInput: ReorderRoomGroupsRequest
Section titled “Input: ReorderRoomGroupsRequest”Request to replace the global room group order.
| Field | Type | Description |
|---|---|---|
ordered_group_ids | repeated string | Ordered room group IDs. The list must include every existing group exactly once. |
Result: ReorderRoomGroupsResponse
Section titled “Result: ReorderRoomGroupsResponse”Result of replacing the global room group order.
| Field | Type | Description |
|---|---|---|
groups | repeated AdminRoomLayoutGroup | Room groups in their new order. |
MoveRoomToGroup
Section titled “MoveRoomToGroup”Moves a channel room to another room group. Requires room.manage in both source and destination groups.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/MoveRoomToGroupInput: MoveRoomToGroupRequest
Section titled “Input: MoveRoomToGroupRequest”Request to move a channel room to another room group.
| Field | Type | Description |
|---|---|---|
room_id | string | Required channel room ID. |
group_id | string | Required destination room group ID. |
Result: MoveRoomToGroupResponse
Section titled “Result: MoveRoomToGroupResponse”Result of moving a channel room.
| Field | Type | Description |
|---|---|---|
room | chatto.api.v1.Room | Moved room after the operation. |
ReorderSidebarItemsInGroup
Section titled “ReorderSidebarItemsInGroup”Replaces the mixed room/link sidebar order in one group. Requires room.manage in that group.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/ReorderSidebarItemsInGroupInput: ReorderSidebarItemsInGroupRequest
Section titled “Input: ReorderSidebarItemsInGroupRequest”Request to replace the mixed sidebar item order in one group.
| Field | Type | Description |
|---|---|---|
group_id | string | Required room group ID. |
items | repeated AdminRoomLayoutItemInput | Ordered room/sidebar-link item references. |
Result: ReorderSidebarItemsInGroupResponse
Section titled “Result: ReorderSidebarItemsInGroupResponse”Result of replacing the mixed sidebar item order.
| Field | Type | Description |
|---|---|---|
group | AdminRoomLayoutGroup | Updated room group. |
CreateSidebarLink
Section titled “CreateSidebarLink”Creates a sidebar link. Requires room.manage in the destination group.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/CreateSidebarLinkInput: CreateSidebarLinkRequest
Section titled “Input: CreateSidebarLinkRequest”Request to create a sidebar link in one room group.
| Field | Type | Description |
|---|---|---|
group_id | string | Required destination room group ID. |
label | string | Required display label. |
url | string | Required absolute http(s) URL or server-local path. |
Result: CreateSidebarLinkResponse
Section titled “Result: CreateSidebarLinkResponse”Result of creating a sidebar link.
| Field | Type | Description |
|---|---|---|
sidebar_link | chatto.api.v1.SidebarLink | Created sidebar link. |
UpdateSidebarLink
Section titled “UpdateSidebarLink”Updates a sidebar link. Requires room.manage in the link’s current group.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/UpdateSidebarLinkInput: UpdateSidebarLinkRequest
Section titled “Input: UpdateSidebarLinkRequest”Request to update a sidebar link.
| Field | Type | Description |
|---|---|---|
link_id | string | Required sidebar link ID. |
label | optional string | New display label, when changing it. |
url | optional string | New absolute http(s) URL or server-local path, when changing it. |
Result: UpdateSidebarLinkResponse
Section titled “Result: UpdateSidebarLinkResponse”Result of updating a sidebar link.
| Field | Type | Description |
|---|---|---|
sidebar_link | chatto.api.v1.SidebarLink | Updated sidebar link. |
DeleteSidebarLink
Section titled “DeleteSidebarLink”Deletes a sidebar link. Requires room.manage in the link’s current group.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/DeleteSidebarLinkInput: DeleteSidebarLinkRequest
Section titled “Input: DeleteSidebarLinkRequest”Request to delete a sidebar link.
| Field | Type | Description |
|---|---|---|
link_id | string | Required sidebar link ID. |
Result: DeleteSidebarLinkResponse
Section titled “Result: DeleteSidebarLinkResponse”Result of deleting a sidebar link.
| Field | Type | Description |
|---|---|---|
deleted | bool | True when the sidebar link was deleted. |
MoveSidebarLinkToGroup
Section titled “MoveSidebarLinkToGroup”Moves a sidebar link to another group. Requires room.manage in both source and destination groups.
POST /api/connect/chatto.admin.v1.AdminRoomLayoutService/MoveSidebarLinkToGroupInput: MoveSidebarLinkToGroupRequest
Section titled “Input: MoveSidebarLinkToGroupRequest”Request to move a sidebar link to another room group.
| Field | Type | Description |
|---|---|---|
link_id | string | Required sidebar link ID. |
group_id | string | Required destination room group ID. |
Result: MoveSidebarLinkToGroupResponse
Section titled “Result: MoveSidebarLinkToGroupResponse”Result of moving a sidebar link.
| Field | Type | Description |
|---|---|---|
sidebar_link | chatto.api.v1.SidebarLink | Moved sidebar link. |