Skip to main content
SDK v7.x · Last verified March 2026 · iOS · Android · Web · Flutter
Full walkthrough below ↓
Platform note — code samples below use TypeScript. Every method has an equivalent in the iOS (Swift), Android (Kotlin), and Flutter (Dart) SDKs — see the linked SDK reference in each step.
Channels are the container for every chat conversation in social.plus. There are three types — Community (public/discoverable), Live (broadcast events), and Conversation (private 1:1 or small group). This guide covers creating and managing all three.

Data Model

Prerequisites: SDK installed with authenticated users → SDK Setup

Quick Start: Create and Join a Channel

Step-by-Step Implementation

1

Choose the right channel type

Channel Types
2

Create the channel

Create Channel
3

Query the channel list with Live Collections

Query Channels
4

Join and leave channels

Join/Leave Channel
5

Update and archive channels

Update Channel · Archive Channels

Connect to Moderation & Analytics

Community channels and their members can be reviewed and managed from Admin Console → Channels. Moderators can view message history, ban members, and close channels.Channel Moderation
Subscribe to channel.created, channel.updated, and channel.deleted webhook events to sync channel data with your own backend or trigger automations.Webhook Events

Common Mistakes

Creating duplicate Conversation channels — For 1:1 DMs, always check if a conversation already exists between two users before creating a new one. Pass both userIds and the SDK will return the existing channel if one exists.
Not handling the Live Collection’s dispose — Always call liveCollection.dispose() when your UI component unmounts to avoid memory leaks and stale update callbacks.

Best Practices

Don’t poll for channel updates. Live Collections push updates automatically — new messages, new channels, and member changes all arrive without any extra requests.
Use the metadata field to attach any application-specific data to a channel (event ID, category, feature flags). Keep it under 500KB.
Archiving preserves message history — users who rejoin can read old messages. Hard deletion is permanent. Default to archive unless regulatory requirements mandate deletion.
Dive deeper: Conversation Management API Reference has full parameter tables, method signatures, and platform-specific details for every API used in this guide.

Next Steps

Sending Messages

Start sending and receiving messages in the channels you just created.

Channel Roles & Permissions

Set up moderator roles before your community grows.

Unread Counts

Add unread badges to your channel list.