Skip to content

channel_move

channel_move changes where a channel or separator sits in the channel list. Positions count from zero at the top.

{
"cmd": "channel_move",
"name": "general",
"position": 0
}
Field Type Required Description
name string Yes Name of the channel or separator to move. Case-sensitive.
position integer Yes Zero-based index in the full channel list, counted after the channel is taken out. 0 is the top. A value past the end moves it to the bottom.

The position counts every channel, including ones the caller can’t see.

{ "cmd": "channel_move", "val": true }

Before this reply, every logged-in connection, including yours, receives a fresh channels_get list in the new order. The move is also recorded in the audit log.

Requires the manage_channels server permission. Without it the server returns Access denied: 'manage_channels' permission required. A user in a timeout gets a rate_limit frame instead.

val When
Failed to move channel '<name>' to position <position> No channel has this name, or the server could not save the new order.

A validation message is returned when name is missing or empty, or position is negative or not a whole number.