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.