Skip to main content

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_update webhook 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.