Server-Side Overview

Parts of Stream Chat are configured from your backend rather than from a client SDK. App settings, permissions, webhooks, push templates, data retention and campaigns are all set up with a server-side SDK or the REST API, authenticated with your API secret. That code never runs in your app.

Those pages used to appear in this sidebar. They now live in the server-side documentation, so the pages here stay focused on the code you ship to your users.

What you will find there

SectionCovers
App and channel settingsApp-wide settings, roles and permission policies, per-channel setting overwrites
WebhooksEvent delivery, SQS, SNS and failover; chat keeps the event catalogue and message hooks
Push configurationNotification templates; providers, devices and preferences moved to the platform push pages
CampaignsSending a message to a segment of your users
Server-driven messagingAI message streaming, unread reminders, restricted message delivery
Channel lookupFetching one channel by type and ID without creating it
Data and complianceRetention policies, audit logs, GDPR deletion, exporting and importing channels
MigrationMoving an existing app onto Stream
Scale and operationsDynamic partitioning, user average response time, Datadog integration
Plan limitsFair usage allowances, storage and bandwidth
Marketplace appsTwo-sided marketplace patterns built on channel type configuration

Languages

The server-side docs are published per language. Pick yours from the selector at the top of the page: Node.js, Python, Go, Java, Ruby, PHP or C#.

If you landed here because your client cannot connect, token generation is the usual cause. Tokens must be signed with your API secret on your server, so a client SDK cannot mint one. Start with Authentication and tokens.