self_role_remove
Drop a role you gave yourself. Only roles that are still self-assignable can be removed this way.
Request
Section titled “Request”{ "cmd": "self_role_remove", "role": "photography"}| Field | Type | Required | Description |
|---|---|---|---|
role |
string | Yes | Role name. IDs are not accepted. Surrounding spaces are trimmed. |
Response
Section titled “Response”The reply is a user_roles_get frame, not self_role_remove:
{ "cmd": "user_roles_get", "user": "alice", "roles": ["user"], "color": null, "gradient": null}See user_roles_get for the fields.
- Every other authenticated connection receives the same frame.
- If the change alters which channels you can see, each of your sessions receives a fresh
channels_getframe. - Removing a paid role doesn’t refund it. It stays bought, so you can add it back for free.
The change is recorded in the audit log.
Permissions
Section titled “Permissions”Any member can call it. It is blocked while you are timed out.
Errors
Section titled “Errors”val |
When |
|---|---|
Role not found |
No role has this name. |
This role is not self-assignable |
The role’s self_assignable is false. Ask someone with manage_roles to remove it. |
You don't have this role |
The role isn’t in your list. |
Failed to remove role '<name>' from yourself |
The server could not write the change to storage. |
| Validation message | role is missing or blank. |
