Open channel metadata overview
The open channel metadata feature lets you set custom key-value pairs in an open channel. Typical use cases include:
- Voice chat rooms — Track seat status (idle/occupied)
- Card games — Store player roles and game state
- Interactive classrooms — Maintain quiz progress and scores
Clients can register listeners to receive real-time metadata change notifications.
Limits
- Each open channel supports up to 100 key-value pairs.
- Metadata is destroyed when the open channel is destroyed.
- Metadata notifications are subject to the open channel message drop policy. To protect metadata notification messages from being dropped, use the Priority senders feature.
- Both client SDK and server API operations count toward the overall metadata operation rate. We recommend keeping the total rate at 100 key-value operations per second or less per open channel.
API endpoints
Once the service is enabled, you can use the following endpoints:
- Set metadata — Set a single key-value pair. Requires a user ID as the owner of the entry.
- Batch set metadata — Set up to 20 key-value pairs in one request. Force-overwrites existing entries, including the owner user ID and value.
- Delete metadata — Delete a single key-value pair. Requires the owner user ID.
- Batch delete metadata — Delete up to 20 key-value pairs in one request. Force-deletes entries regardless of ownership. Useful for admin cleanup.
Monitor metadata changes
- Server callbacks — Subscribe to the
open_channel:metadata_updatewebhook event in the Console under Chat > Webhooks to receive real-time metadata change events (set, delete, delete all). See Open channel metadata sync. - Client callbacks — Client SDKs provide listeners for metadata sync, set, and delete events.