Skip to main content
Channels allow you to scope events to specific people or rooms. For example:
  • Chat rooms
  • Emitting events to a specific user

Default Channel

By default, events are sent to the default channel. If we emit an event without specifying a channel like so:
it can automatically be read using the default channel:

Custom Channels

Emit events to a specific channel:
route.ts
Subscribe to one or more channels:
page.tsx

Channel Patterns

Send notifications to individual users:
route.ts
page.tsx
Broadcast to all users in a room:
route.ts
Scope events to team workspaces:
route.ts

Dynamic Channels

Subscribe to multiple channels at the same time:
page.tsx

Broadcasting to Multiple Channels

Emit to multiple channels at the same time:
route.ts

Channel Security

Combine channels with middleware for secure access control:
app/api/realtime/route.ts

Authenticate Realtime Requests

See the middleware documentation for authentication examples