Server-Side Overview

Parts of Stream Video are configured from your backend rather than from a client SDK. Call types, recording, transcription, webhooks and SIP 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 have moved to the server-side documentation, which has its own section, so the pages here stay focused on the code you ship to your users.

What the server-side docs cover

SectionCovers
Users and tokensCreating users, generating the tokens your client connects with
Call typesDefaults, permissions, geofencing and settings that apply to every call of a type
StreamingBackstage, RTMP, WHIP and SRT ingress, HLS output
RecordingComposite, individual track, raw and frame recording, plus storage
TranscriptionTranscriptions, captions and where they are stored
SIPInbound trunks, DTMF, Twilio and Telnyx integrations
WebhooksEvent delivery, the event catalogue, SQS and SNS
QualityLatency, networking and firewall rules, connection tests, stats
AnalyticsCall attendance, participant metrics, user feedback
Asynchronous operationsMonitoring the long-running tasks that return a task ID
Rate limitsPer-endpoint and per-platform limits, headers, raising them
ModerationAudio and video moderation
GDPR and privacyDeleting user and call data

Languages

Every server-side page has code tabs for Node.js, Python, Go, Java and cURL. Pick your backend language at the top of each example.

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. Start with Users and tokens.