This reference contains some useful information about permission system, applicable to both versions.
Actions
Copied!
Confused about "Actions"?
Let us know how we can improve our documentation:
In the table below you will find all available actions of Stream Chat permission system
Action
Resource Type
Description
AddLinks
Channel
Allows user to add URLs into messages
AddOwnChannelMembership
Channel
Allows user to add own channel membership (join channel)
BanChannelMember
Channel
Allows user to ban channel members
CreateCall
Channel
Allows user to creates a call
CreateChannel
Channel
Allows user to create a new channel
CreateDistinctChannelForOthers
Channel
Allows user to create new distinct channel for other users (e.g. user A creates channel for users B and C)
CreateMessage
Channel
Allows user to send a new message
CreateReaction
Channel
Allows user to add a reaction to a message
DeleteChannel
Channel
Allows user to delete a channel
DeleteReaction
Channel
Allows user to delete a reaction
FlagMessage
Channel
Allows user to flag messages
JoinCall
Channel
Allows user to joins a call
MuteChannel
Channel
Allows user to mute and unmute channel
PinMessage
Channel
Allows user to pin a message
ReadChannel
Channel
Allows user to read messages from the channel
ReadChannelMembers
Channel
Allows user to read channel members
ReadMessageFlags
Channel
Allows user to access messages that have been flagged
RecreateChannel
Channel
Allows user to recreate a channel when it got deleted
RemoveOwnChannelMembership
Channel
Allows user to leave the channel (remove own channel membership)
SendCustomEvent
Channel
Allows user to send custom events to a channel
SkipChannelCooldown
Channel
Allows user to bypass existing cooldown in a channel
SkipMessageModeration
Channel
Allows user to bypass automatic message moderation
TruncateChannel
Channel
Allows user to truncate a channel
UpdateChannel
Channel
Allows user to update channel data
UpdateChannelCooldown
Channel
Allows user to set and unset cooldown time for a channel (slow mode)
UpdateChannelFrozen
Channel
Allows user to freeze and unfreeze a channel
UpdateChannelMembers
Channel
Allows user to add, modify and remove channel members
UploadAttachment
Channel
Allows user to upload files and images
UseFrozenChannel
Channel
Allows user to send messages and reactions to a frozen channels
DeleteMessage
Message
Allows user to delete a message
RunMessageAction
Message
Allows user to run an action against a message
UnblockMessage
Message
Allows user to unblock message blocked by automatic moderation
UpdateMessage
Message
Allows user to update a message
DeleteAttachment
Attachment
Allows user to delete uploaded files and images
BanUser
User
Allows user to ban users
FlagUser
User
Allows user to flag users
MuteUser
User
Allows user to mute and unmute users
SearchUser
User
Allows user to search for other users
UpdateUser
User
Allows user to update users
UpdateUserRole
User
Allows user to update user roles
UpdateUserTeams
User
Allows user to update user teams
ReadFlagReports
FlagReport
Allows user to read flag reports
UpdateFlagReport
FlagReport
Allows user to update flag report
Default Grants
Copied!
Confused about "Default Grants"?
Let us know how we can improve our documentation:
In tables below you will find default permission grants for each builtin channel type as well as .app permission scope.
For each of of the above actions, there are different built in permissions depending on whether the object was created by the user or not. For example, users can be given permissions to delete-attachment which allows for deleting any message attachments, or they can be given permissions to delete-attachment-owned to restrict this to only attachments added by the current user.
Every custom channel type that you create using CreateChannelType API endpoint, will have messaging scope grants by default.
Scope .app
Permission ID
admin
moderator
user
guest
flag-user
✅
✅
✅
✅
mute-user
✅
✅
✅
✅
read-flag-reports
✅
✅
✖️
✖️
search-user
✅
✅
✅
✅
update-flag-report
✅
✅
✖️
✖️
update-user-owner
✅
✅
✅
✅
Scope messaging
Permission ID
admin
moderator
user
channel_member
channel_moderator
add-links
✅
✅
✖️
✅
✅
add-links-owner
✖️
✖️
✅
✖️
✖️
ban-channel-member
✅
✅
✖️
✖️
✅
ban-user
✅
✅
✖️
✖️
✖️
create-call
✅
✅
✖️
✅
✅
create-channel
✅
✅
✅
✖️
✖️
create-message
✅
✅
✖️
✅
✅
create-message-owner
✖️
✖️
✅
✖️
✖️
create-reaction
✅
✅
✖️
✅
✅
create-reaction-owner
✖️
✖️
✅
✖️
✖️
delete-attachment
✅
✅
✖️
✖️
✅
delete-attachment-owner
✖️
✖️
✅
✖️
✖️
delete-channel
✅
✖️
✖️
✖️
✖️
delete-channel-owner
✖️
✅
✅
✖️
✖️
delete-message
✅
✅
✖️
✖️
✅
delete-message-owner
✖️
✖️
✅
✖️
✖️
delete-reaction
✅
✅
✖️
✖️
✅
delete-reaction-owner
✖️
✖️
✅
✖️
✖️
flag-message
✅
✅
✖️
✅
✅
flag-message-owner
✖️
✖️
✅
✖️
✖️
join-call
✅
✅
✖️
✅
✅
mute-channel
✅
✅
✖️
✅
✅
mute-channel-owner
✖️
✖️
✅
✖️
✖️
pin-message
✅
✅
✖️
✅
✅
pin-message-owner
✖️
✖️
✅
✖️
✖️
read-channel
✅
✅
✖️
✅
✅
read-channel-members
✅
✅
✖️
✅
✅
read-channel-members-owner
✖️
✖️
✅
✖️
✖️
read-channel-owner
✖️
✖️
✅
✖️
✖️
read-message-flags
✅
✅
✖️
✖️
✅
recreate-channel
✅
✖️
✖️
✖️
✖️
recreate-channel-owner
✖️
✅
✅
✖️
✖️
remove-own-channel-membership
✅
✅
✖️
✅
✅
remove-own-channel-membership-owner
✖️
✖️
✅
✖️
✖️
run-message-action
✅
✅
✖️
✅
✅
run-message-action-owner
✖️
✖️
✅
✖️
✖️
send-custom-event
✅
✅
✖️
✅
✅
send-custom-event-owner
✖️
✖️
✅
✖️
✖️
skip-channel-cooldown
✅
✅
✖️
✖️
✅
skip-message-moderation
✅
✅
✖️
✖️
✅
truncate-channel
✅
✖️
✖️
✖️
✖️
truncate-channel-owner
✖️
✅
✅
✖️
✖️
unblock-message
✅
✅
✖️
✖️
✅
update-channel
✅
✅
✖️
✖️
✅
update-channel-cooldown
✅
✅
✖️
✖️
✅
update-channel-frozen
✅
✅
✖️
✖️
✅
update-channel-members
✅
✅
✖️
✖️
✅
update-channel-members-owner
✖️
✖️
✅
✖️
✖️
update-channel-owner
✖️
✖️
✅
✖️
✖️
update-message
✅
✅
✖️
✖️
✅
update-message-owner
✖️
✖️
✅
✖️
✖️
upload-attachment
✅
✅
✖️
✅
✅
upload-attachment-owner
✖️
✖️
✅
✖️
✖️
Scope livestream
Permission ID
admin
moderator
user
channel_moderator
guest
anonymous
add-links
✅
✅
✅
✖️
✖️
✖️
ban-channel-member
✅
✅
✖️
✅
✖️
✖️
ban-user
✅
✅
✖️
✖️
✖️
✖️
create-call
✅
✅
✖️
✅
✖️
✖️
create-channel
✅
✅
✅
✖️
✖️
✖️
create-message
✅
✅
✅
✖️
✖️
✖️
create-reaction
✅
✅
✅
✖️
✖️
✖️
delete-attachment
✅
✅
✖️
✅
✖️
✖️
delete-attachment-owner
✖️
✖️
✅
✖️
✖️
✖️
delete-channel
✅
✖️
✖️
✖️
✖️
✖️
delete-message
✅
✅
✖️
✅
✖️
✖️
delete-message-owner
✖️
✖️
✅
✖️
✖️
✖️
delete-reaction
✅
✅
✖️
✅
✖️
✖️
delete-reaction-owner
✖️
✖️
✅
✖️
✖️
✖️
flag-message
✅
✅
✅
✖️
✅
✖️
join-call
✅
✅
✅
✖️
✅
✅
mute-channel
✅
✅
✅
✖️
✅
✖️
pin-message
✅
✅
✖️
✅
✖️
✖️
pin-message-owner
✖️
✖️
✅
✖️
✖️
✖️
read-channel
✅
✅
✅
✖️
✅
✅
read-channel-members
✅
✅
✅
✖️
✅
✅
read-message-flags
✅
✅
✖️
✅
✖️
✖️
recreate-channel
✅
✖️
✖️
✖️
✖️
✖️
remove-own-channel-membership
✅
✖️
✖️
✖️
✖️
✖️
run-message-action
✅
✅
✅
✖️
✖️
✖️
send-custom-event
✅
✅
✅
✖️
✖️
✖️
skip-channel-cooldown
✅
✅
✖️
✅
✖️
✖️
skip-message-moderation
✅
✅
✖️
✅
✖️
✖️
truncate-channel
✅
✖️
✖️
✖️
✖️
✖️
unblock-message
✅
✅
✖️
✅
✖️
✖️
update-channel
✅
✖️
✖️
✖️
✖️
✖️
update-channel-cooldown
✅
✅
✖️
✅
✖️
✖️
update-channel-frozen
✅
✅
✖️
✅
✖️
✖️
update-channel-members
✅
✖️
✖️
✖️
✖️
✖️
update-message
✅
✅
✖️
✅
✖️
✖️
update-message-owner
✖️
✖️
✅
✖️
✖️
✖️
upload-attachment
✅
✅
✅
✖️
✖️
✖️
Scope team
Permission ID
admin
moderator
user
channel_member
channel_moderator
add-links
✅
✅
✖️
✅
✅
add-links-owner
✖️
✖️
✅
✖️
✖️
ban-channel-member
✅
✅
✖️
✖️
✅
ban-user
✅
✅
✖️
✖️
✖️
create-call
✅
✅
✖️
✅
✅
create-channel
✅
✅
✅
✖️
✖️
create-message
✅
✅
✖️
✅
✅
create-message-owner
✖️
✖️
✅
✖️
✖️
create-reaction
✅
✅
✖️
✅
✅
create-reaction-owner
✖️
✖️
✅
✖️
✖️
delete-attachment
✅
✅
✖️
✖️
✅
delete-attachment-owner
✖️
✖️
✅
✖️
✖️
delete-channel
✅
✖️
✖️
✖️
✖️
delete-channel-owner
✖️
✅
✅
✖️
✖️
delete-message
✅
✅
✖️
✖️
✅
delete-message-owner
✖️
✖️
✅
✖️
✖️
delete-reaction
✅
✅
✖️
✖️
✅
delete-reaction-owner
✖️
✖️
✅
✖️
✖️
flag-message
✅
✅
✖️
✅
✅
flag-message-owner
✖️
✖️
✅
✖️
✖️
join-call
✅
✅
✖️
✅
✅
mute-channel
✅
✅
✖️
✅
✅
mute-channel-owner
✖️
✖️
✅
✖️
✖️
pin-message
✅
✅
✖️
✅
✅
pin-message-owner
✖️
✖️
✅
✖️
✖️
read-channel
✅
✅
✖️
✅
✅
read-channel-members
✅
✅
✖️
✅
✅
read-channel-members-owner
✖️
✖️
✅
✖️
✖️
read-channel-owner
✖️
✖️
✅
✖️
✖️
read-message-flags
✅
✅
✖️
✖️
✅
recreate-channel
✅
✖️
✖️
✖️
✖️
recreate-channel-owner
✖️
✅
✅
✖️
✖️
remove-own-channel-membership
✅
✅
✖️
✅
✅
remove-own-channel-membership-owner
✖️
✖️
✅
✖️
✖️
run-message-action
✅
✅
✖️
✅
✅
run-message-action-owner
✖️
✖️
✅
✖️
✖️
send-custom-event
✅
✅
✖️
✅
✅
send-custom-event-owner
✖️
✖️
✅
✖️
✖️
skip-channel-cooldown
✅
✅
✖️
✖️
✅
skip-message-moderation
✅
✅
✖️
✖️
✅
truncate-channel
✅
✖️
✖️
✖️
✖️
truncate-channel-owner
✖️
✅
✅
✖️
✖️
unblock-message
✅
✅
✖️
✖️
✅
update-channel
✅
✅
✖️
✖️
✅
update-channel-cooldown
✅
✅
✖️
✖️
✅
update-channel-frozen
✅
✅
✖️
✖️
✅
update-channel-members
✅
✅
✖️
✖️
✅
update-channel-members-owner
✖️
✖️
✅
✖️
✖️
update-channel-owner
✖️
✖️
✅
✖️
✖️
update-message
✅
✅
✖️
✖️
✅
update-message-owner
✖️
✖️
✅
✖️
✖️
upload-attachment
✅
✅
✖️
✅
✅
upload-attachment-owner
✖️
✖️
✅
✖️
✖️
Scope commerce
Permission ID
admin
moderator
user
channel_member
channel_moderator
guest
add-links
✅
✅
✖️
✅
✅
✅
add-links-owner
✖️
✖️
✅
✖️
✖️
✖️
ban-channel-member
✅
✅
✖️
✖️
✅
✖️
ban-user
✅
✅
✖️
✖️
✖️
✖️
create-call
✅
✅
✖️
✖️
✅
✖️
create-channel
✅
✅
✖️
✖️
✖️
✅
create-message
✅
✅
✖️
✅
✅
✖️
create-message-owner
✖️
✖️
✅
✖️
✖️
✖️
create-reaction
✅
✅
✖️
✅
✅
✖️
create-reaction-owner
✖️
✖️
✅
✖️
✖️
✖️
delete-attachment
✅
✅
✖️
✖️
✅
✖️
delete-attachment-owner
✖️
✖️
✅
✖️
✖️
✅
delete-channel
✅
✖️
✖️
✖️
✖️
✖️
delete-message
✅
✅
✖️
✖️
✅
✖️
delete-message-owner
✖️
✖️
✅
✖️
✖️
✅
delete-reaction
✅
✅
✖️
✖️
✅
✖️
delete-reaction-owner
✖️
✖️
✅
✖️
✖️
✅
flag-message
✅
✅
✖️
✅
✅
✖️
flag-message-owner
✖️
✖️
✅
✖️
✖️
✅
join-call
✅
✅
✖️
✅
✅
✖️
mute-channel
✅
✅
✖️
✅
✅
✖️
mute-channel-owner
✖️
✖️
✅
✖️
✖️
✅
pin-message
✅
✅
✖️
✖️
✅
✖️
pin-message-owner
✖️
✖️
✅
✖️
✖️
✅
read-channel
✅
✅
✖️
✅
✅
✖️
read-channel-members
✅
✅
✖️
✅
✅
✖️
read-channel-members-owner
✖️
✖️
✅
✖️
✖️
✅
read-channel-owner
✖️
✖️
✅
✖️
✖️
✅
read-message-flags
✅
✅
✖️
✖️
✅
✖️
recreate-channel
✅
✖️
✖️
✖️
✖️
✖️
remove-own-channel-membership
✅
✅
✖️
✅
✅
✖️
remove-own-channel-membership-owner
✖️
✖️
✅
✖️
✖️
✖️
run-message-action
✅
✅
✖️
✅
✅
✖️
run-message-action-owner
✖️
✖️
✅
✖️
✖️
✖️
send-custom-event
✅
✅
✖️
✅
✅
✖️
send-custom-event-owner
✖️
✖️
✅
✖️
✖️
✖️
skip-channel-cooldown
✅
✅
✖️
✖️
✅
✖️
skip-message-moderation
✅
✅
✖️
✖️
✅
✖️
truncate-channel
✅
✖️
✖️
✖️
✖️
✖️
unblock-message
✅
✅
✖️
✖️
✅
✖️
update-channel
✅
✅
✖️
✖️
✅
✖️
update-channel-cooldown
✅
✅
✖️
✖️
✅
✖️
update-channel-frozen
✅
✅
✖️
✖️
✅
✖️
update-channel-members
✅
✅
✖️
✖️
✅
✖️
update-channel-members-owner
✖️
✖️
✅
✖️
✖️
✅
update-message
✅
✅
✖️
✖️
✅
✖️
update-message-owner
✖️
✖️
✅
✖️
✖️
✅
upload-attachment
✅
✅
✖️
✅
✅
✅
upload-attachment-owner
✖️
✖️
✅
✖️
✖️
✖️
Scope gaming
Permission ID
admin
moderator
user
channel_member
channel_moderator
add-links
✅
✅
✖️
✅
✅
add-links-owner
✖️
✖️
✅
✖️
✖️
ban-channel-member
✅
✅
✖️
✖️
✅
ban-user
✅
✅
✖️
✖️
✖️
create-call
✅
✅
✖️
✅
✅
create-channel
✅
✖️
✖️
✖️
✖️
create-message
✅
✅
✖️
✅
✅
create-message-owner
✖️
✖️
✅
✖️
✖️
create-reaction
✅
✅
✖️
✅
✅
create-reaction-owner
✖️
✖️
✅
✖️
✖️
delete-attachment
✅
✅
✖️
✖️
✅
delete-attachment-owner
✖️
✖️
✅
✖️
✖️
delete-channel
✅
✖️
✖️
✖️
✖️
delete-message
✅
✅
✖️
✖️
✅
delete-message-owner
✖️
✖️
✅
✖️
✖️
delete-reaction
✅
✅
✖️
✖️
✅
delete-reaction-owner
✖️
✖️
✅
✖️
✖️
flag-message
✅
✅
✖️
✅
✅
flag-message-owner
✖️
✖️
✅
✖️
✖️
join-call
✅
✅
✖️
✅
✅
mute-channel
✅
✅
✖️
✅
✅
mute-channel-owner
✖️
✖️
✅
✖️
✖️
pin-message
✅
✅
✖️
✖️
✅
read-channel
✅
✅
✖️
✅
✅
read-channel-members
✅
✅
✖️
✅
✅
read-channel-members-owner
✖️
✖️
✅
✖️
✖️
read-channel-owner
✖️
✖️
✅
✖️
✖️
read-message-flags
✅
✅
✖️
✖️
✅
recreate-channel
✅
✖️
✖️
✖️
✖️
remove-own-channel-membership
✅
✅
✖️
✅
✅
remove-own-channel-membership-owner
✖️
✖️
✅
✖️
✖️
run-message-action
✅
✅
✖️
✅
✅
run-message-action-owner
✖️
✖️
✅
✖️
✖️
send-custom-event
✅
✅
✖️
✅
✅
send-custom-event-owner
✖️
✖️
✅
✖️
✖️
skip-channel-cooldown
✅
✅
✖️
✖️
✅
skip-message-moderation
✅
✅
✖️
✖️
✅
truncate-channel
✅
✖️
✖️
✖️
✖️
unblock-message
✅
✅
✖️
✖️
✅
update-channel
✅
✖️
✖️
✖️
✖️
update-channel-cooldown
✅
✅
✖️
✖️
✅
update-channel-frozen
✅
✅
✖️
✖️
✅
update-channel-members
✅
✖️
✖️
✖️
✖️
update-message
✅
✅
✖️
✖️
✅
update-message-owner
✖️
✖️
✅
✖️
✖️
upload-attachment
✅
✅
✖️
✅
✅
upload-attachment-owner
✖️
✖️
✅
✖️
✖️
Multi-Tenant Default Grants
Copied!
Confused about "Multi-Tenant Default Grants"?
Let us know how we can improve our documentation:
In tables below you will find default permission grants for builtin roles that designed for multi-tenant applications. They are useful for multi-tenant applications only.
By default, for multi-tenant applications, all objects (users, channels, and messages) must belong to the same team to be able to interact. These multi-tenant permissions enable overriding that behavior, so that certain users can have permissions to interact with objects on any team