Overview
Channels in Open WebUI provide a powerful team collaboration system with support for group messaging, direct messages, threaded conversations, and AI model mentions. Built on WebSocket technology, channels offer real-time synchronization across all connected devices.Channel Types
Open WebUI supports three distinct channel types:- Standard Channels
- Group Channels
- Direct Messages (DM)
Public or private channels created by admins for organization-wide communication:
- Access Control: Managed through user and group permissions
- Visibility: Can be public (all users) or restricted
- Use Case: Announcements, team discussions, topic-based conversations
Channel functionality must be enabled through
ENABLE_CHANNELS configuration and requires the features.channels permission for non-admin users.Creating Channels
Direct Messages
Start a conversation with any user:Group Channels
Create private team channels:Standard Channels (Admin Only)
Create organization-wide channels:Channel Management
Listing Channels
View all accessible channels:- User View
- Admin View
- Last Message Time: When the last message was sent
- Unread Count: Number of unread messages since last read
- User Status: For DM channels, shows participant online status
- User IDs: List of all members (group/DM only)
Updating Channels
Modify channel settings:Member Management
Add Members
Remove Members
View Members
Update Active Status
Messaging
Sending Messages
Post messages to channels:Message Features
- Threading
- Reactions
- Pinned Messages
- File Attachments
Create organized discussions:
- Parent Messages: Top-level messages in the channel
- Thread Replies: Set
parent_idto reply to a message - Reply Count: Automatically tracked for each parent message
- Latest Reply Time: Shows when threads were last active
AI Model Integration
Mention AI models to get responses:Automatic Response
The mentioned model automatically:
- Creates a reply in the thread
- Includes full thread history for context
- Supports image attachments in the conversation
Replying to a model’s message automatically mentions that model again, creating a continuous conversation.
Retrieving Messages
Access channel messages:Thread Conversations
View threaded replies:Real-Time Features
WebSocket Events
Channels use WebSocket rooms for real-time updates:Channel Events
Clients join room:
channel:{channel_id}Events emitted:channel:created- New channel availablemessage- New message postedmessage:update- Message editedmessage:reply- New thread reply
Active User Tracking
Track who’s currently viewing the channel:Used for:
- Read receipts
- Typing indicators
- Notification decisions
Notifications
Automatic notifications for inactive users:- Webhook Support: Send to user’s configured webhook URL
- Smart Delivery: Only notifies users not actively viewing the channel
- Rich Content: Includes channel name, message content, and deep link
- Custom Format: Supports various notification platforms
Channel Webhooks
Create incoming webhooks for external integrations:Creating Webhooks
Using Webhooks
Managing Webhooks
List Webhooks
Update Webhook
Delete Webhook
Regenerate Token
Delete and recreate the webhook to generate a new secure token
Access Control
Permission Levels
- Read Access
- Write Access
- Manager
Users can:
- View channel and messages
- Join the channel (standard channels only)
- Read all message history
- See member list
Access Grant Types
Configure channel access:Unread Tracking
Automatic read receipt system:How It Works
- Last Read Timestamp: Each member has
last_read_attimestamp - Unread Count: Calculated as messages created after
last_read_at - Auto-Update: Joining a channel updates your
last_read_at - Manual Update: Can explicitly mark as read via API
Update Read Status
Best Practices
Channel Organization
Message Threading
- Keep Threads Focused: Use threads for specific sub-topics
- Reply in Threads: Avoid cluttering main channel with extended discussions
- Pin Important Messages: Highlight key information for easy access
AI Model Usage
- Mention Specifically: Use full model names for clarity
- Provide Context: Models see full thread history
- Use Threads: Keep AI conversations organized in threads
Performance
- Pagination: Messages load 50 at a time by default
- Active Members: Track 30 members per page
- Optimize Queries: Use filters to reduce data transfer
API Reference
List Channels
Get Channel
Create Channel
Update Channel
Delete Channel
Post Message
All API endpoints require authentication and respect channel access controls. Admins can optionally bypass restrictions with
ENABLE_ADMIN_CHAT_ACCESS enabled.