CSV,Roles is a simple bot that aims to solve one problem. Mass assigning roles to or removing roles from your list of members via an uploaded CSV file.
Enjoying the bot? Buy me a coffee
It's quite simple.
/assign-role
or /remove-role
command where you select a role and drop in your newly created csv file.Discord has rate limits on role assignment. This is mostly handled automatically,
but would limit the bot to how quickly it can process larger lists. You can estimate
that it will take up to 75 (down from 90) seconds per 60 members.
The requirements for this bot to work are very simple.
CSV would look something like this (minus the row numbers):
discord usernames/ids,
nickname1,
member2#1234,
nickname2,
1234567890123,
3213549876543,
Here is a quick rundown of all the bot's commands, their required permissions, parameters, and a short description of the command.
Notice: Parameters inside
[
]
are to be considered required, while(
)
are optional parameters.
Command | Req. Permissions | Parameters | Description |
---|---|---|---|
/assign-role |
Manage Roles | [role] : Role to be assigned.[file] : Upload your CSV file.(header) : Enter user identifier header name (defaults to first column if not specified). |
Assign the selected role to members in bulk via CSV upload. |
/remove-role |
Manage Roles | [role] : Role to be removed.[file] : Upload your CSV File.(header) : Enter user identifier header name (defaults to first column if not specified). |
Remove the selected role from members in bulk via CSV upload. |
/role permissions |
None | [role] : Select a role to view its permissions |
View a role's permissions. |
/role members |
None | [role] : Select a role to view its members. |
View a role's members. |
/export-users |
Manage Roles | (filter_role) : Export only members with this role.(include_bots) : Include or exclude bots from the export. |
Export server members to a csv file. |
/invite |
None | None | Display an invite link for the bot. |
/help |
None | (command) : View specific help info about this command. |
View the bot's commands, their parameters, and descriptions. |
/links |
None | None | View links for support, documentation, and more. |
New in Version 3.9.0
A new optional parameter has been added to both /assign-role
and /remove-role
commands.
This optional paramater will allow you to specify the name of the header where your user identifiers are located.
Example File:
affiliate name, discord user
dlchamp, .dlchamp
Example command:
/assign-role role: @test, file: members.csv, header: discord user
Assign a selected role to a bulk list of members via csv upload.
Identifiers:
#xxxx
if using old username still)File Requirements:
Minimum example
user
173105961442082816
...
Username lookup priority:
Note: If multiple users share any of the above identifiers, only the first occurrence will be found.
Remove a selected role from a bulk list of members via csv upload.
Identifiers:
#xxxx
if using old username still)File Requirements:
Minimum example
user
173105961442082816
...
Username lookup priority:
Note: If multiple users share any of the above identifiers, only the first occurrence will be found.
Export server members as a CSV File.
Exported file includes ID, username, server nickname, roles, user type, and join date (utc).
ID,Username,Display Name,Roles,User Type, Join Date,
173105961442082816,dlchamp,DLCHAMP,"[Contributor,Support,Chat Mod,Developer,Moderator]",Human,2022-02-27 17:20:32.198000+00:00
...
You now have more control over the export!
When you use the /export-users
command you will be greeted with a new configuration screen.
Within this configuration screen you will be able to:
- By default the export will include ALL members, humans and bots
- A role can only exist in one list or the other.
- If a member has any of the excluded roles, they will not be exported, even if they have one of the included roles.