# Roles & Permissions

`AmityClient` class provides a method `hasPermission` which allows you to check if the current logged-in user has permission to do stuff in a given channel.

We determine a user's moderation capabilities based on their current role. social.plus SDK has the following default roles:

1. **Member** - has no moderation privileges
2. **Community/Channel Moderator** - can assert general moderation privileges on other users
3. **Super Moderator** - can assert general moderation privileges and be exempt from moderation from other users
4. **Global Admin** (Admin Only) - can assign the roles of others, assert all moderation privileges, and be exempt from moderation

A user's role can be changed via the Console. Refer to [Moderation, Roles & Privileges](/analytics-and-moderation/console/moderation-roles-and-privileges.md#change-user-role) for the instructions on how to change a user's role.

{% hint style="warning" %}
The Global Admin role cannot be assigned to a user.
{% endhint %}

Below are tables for each category that show the default roles and permissions. You can create new roles and assign a specific set of permissions for each role in the SP Console. Refer to [Moderation, Roles & Privileges](/analytics-and-moderation/console/moderation-roles-and-privileges.md#create-role).

### User

<table><thead><tr><th width="228">Permission</th><th width="146" align="center">Global Admin</th><th width="173" align="center">Super Moderator</th><th width="215" align="center">Community Moderator</th><th width="188" align="center">Channel Moderator</th></tr></thead><tbody><tr><td>SP Console Access</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Create, Edit, &#x26; Delete, Roles</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr><tr><td>Ban &#x26; Edit User*</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from filters</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from rate limits</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from mute</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from ban</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from blacklist &#x26; whitelist</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Exempt from repitition check</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr></tbody></table>

*\*UserV3*

### Channel

<table><thead><tr><th width="254">Permission</th><th width="183" align="center">Global Admin</th><th width="178" align="center">Super Moderator</th><th align="center">Community Moderator</th><th width="188" align="center">Channel Moderator</th></tr></thead><tbody><tr><td>Edit, Ban, Add, Remove, &#x26; Mute Channel User *</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Edit &#x26; Mute Channel*</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Edit &#x26; Delete Message*</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Edit Channel Rate Limit*</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td>Ban, Mute, Rate limit, &#x26; Manage Users</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Mute Channels</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Rate Limit Channels</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Manage Messages</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td></tr><tr><td>Global Access</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr></tbody></table>

\**ChannelV3*

### Community

<table><thead><tr><th width="254">Permission</th><th width="183" align="center">Global Admin</th><th width="178" align="center">Super Moderator</th><th align="center">Community Moderator</th><th width="188" align="center">Channel Moderator</th></tr></thead><tbody><tr><td>Create, delete, Edit Community Categories</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Edit &#x26; Delete Communities*</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Edit, Add, Ban, &#x26; Remove Community Users*</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Edit, Delete, &#x26; Review Community Posts*</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Edit &#x26; Delete Community Comments*</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Manage Community</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Manage Community Stories</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr></tbody></table>

*\*CommunityV3*

There is no limit to the number of moderators in a community. If there are 100 members in the community, all 100 members can be promoted to moderator. Promoting a user to a community-level moderator can be done using the [Update Role API](https://apidocs.dev.amity.co/#/Role/put_v3_roles__roleId) or through the SDK.

### User Feed, Posts, Comments, & Notifications

<table><thead><tr><th width="254">Permission</th><th width="183" align="center">Global Admin</th><th width="178" align="center">Super Moderator</th><th align="center">Community Moderator</th><th width="188" align="center">Channel Moderator</th></tr></thead><tbody><tr><td>Edit &#x26; Delete User Feed Post</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Edit &#x26; Delete User Feed Comment</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Manage Posts &#x26; Comments</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td>Manage Network Settings</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr></tbody></table>

## Permissions

Each role can be assigned with many permissions. Below is a list of all the possible permissions that can be assigned to a user.

<table data-header-hidden><thead><tr><th width="238.33333333333331">Source</th><th width="284">Permission</th><th>Description</th></tr></thead><tbody><tr><td>Source</td><td>Permission</td><td>Description</td></tr><tr><td><strong>Channel</strong></td><td><code>MUTE_CHANNEL</code></td><td>Can mute/unmute channel</td></tr><tr><td></td><td><code>CLOSE_CHANNEL</code></td><td>Can close channel</td></tr><tr><td></td><td><code>EDIT_CHANNEL</code></td><td>Can edit channel</td></tr><tr><td></td><td><code>EDIT_CHANNEL_RATELIMIT</code></td><td>Can set rate limit of channel</td></tr><tr><td></td><td><code>EDIT_MESSAGE</code></td><td>Can edit all messages</td></tr><tr><td></td><td><code>DELETE_MESSAGE</code></td><td>Can delete all messages</td></tr><tr><td></td><td><code>BAN_CHANNEL_USER</code></td><td>Can ban/unban user from channel</td></tr><tr><td></td><td><code>MUTE_CHANNEL_USER</code></td><td>Can mute/unmute user in channel</td></tr><tr><td></td><td><code>ADD_CHANNEL_USER</code></td><td>Can add users to channel</td></tr><tr><td></td><td><code>REMOVE_CHANNEL_USER</code></td><td>Can add remove user from channel</td></tr><tr><td></td><td><code>EDIT_CHANNEL_USER</code></td><td>Can edit users in channel</td></tr><tr><td><strong>User</strong></td><td><code>BAN_USER</code></td><td>Can global ban/unban user</td></tr><tr><td></td><td><code>EDIT_USER</code></td><td>Can edit users</td></tr><tr><td></td><td><code>ASSIGN_USER_ROLE</code></td><td>Can assign role to users</td></tr><tr><td><strong>User feed</strong></td><td><code>EDIT_USER_FEED_POST</code></td><td>Can edit all posts on user feed</td></tr><tr><td></td><td><code>DELETE_USER_FEED_POST</code></td><td>Can delete all posts in user feed</td></tr><tr><td></td><td><code>EDIT_USER_FEED_COMMENT</code></td><td>Can edit all comments on user feed</td></tr><tr><td></td><td><code>DELETE_USER_FEED_COMMENT</code></td><td>Can delete all comments in user feed</td></tr><tr><td><strong>Community</strong></td><td><code>ADD_COMMUNITY_USER</code></td><td>Can add users to community</td></tr><tr><td></td><td><code>REMOVE_COMMUNITY_USER</code></td><td>Can remove users from community</td></tr><tr><td></td><td><code>EDIT_COMMUNITY_USER</code></td><td>Can edit users in community</td></tr><tr><td></td><td><code>BAN_COMMUNITY_USER</code></td><td>Can ban users in community</td></tr><tr><td></td><td><code>MUTE_COMMUNITY_USER</code></td><td>Can mute users in community</td></tr><tr><td></td><td><code>EDIT_COMMUNITY</code></td><td>Can edit community</td></tr><tr><td></td><td><code>DELETE_COMMUNITY</code></td><td>Can delete community</td></tr><tr><td></td><td><code>EDIT_COMMUNITY_POST</code></td><td>Can edit all posts in community feed</td></tr><tr><td></td><td><code>DELETE_COMMUNITY_POST</code></td><td>Can delete all posts in community feed</td></tr><tr><td></td><td><code>EDIT_COMMUNITY_COMMENT</code></td><td>Can edit all comments in community feed</td></tr><tr><td></td><td><code>DELETE_COMMUNITY_COMMENT</code></td><td>Can delete all comments in community feed</td></tr><tr><td></td><td><code>REVIEW_COMMUNITY_POST</code></td><td>Can review community post</td></tr><tr><td></td><td><code>MANAGE_COMMUNITY_STORY</code></td><td>Can create and delete community story</td></tr><tr><td><strong>Community Category</strong></td><td><code>CREATE_COMMUNITY_CATEGORY</code></td><td>Can create new community categories</td></tr><tr><td></td><td><code>EDIT_COMMUNITY_CATEGORY</code></td><td>Can edit community categories</td></tr><tr><td></td><td><code>DELETE_COMMUNITY_CATEGORY</code></td><td>Can delete community categories</td></tr><tr><td><strong>Network</strong></td><td><code>CREATE_ROLE</code></td><td>Can create new roles</td></tr><tr><td></td><td><code>EDIT_ROLE</code></td><td>Can edit roles</td></tr><tr><td></td><td><code>DELETE_ROLE</code></td><td>Can delete roles</td></tr><tr><td><strong>Notification</strong></td><td><code>MANAGE_NOTIFICATION_NETWORK_SETTING</code></td><td>Can manage notification settings</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.social.plus/social-plus-sdk/core-concepts/user/user-permission.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
