Get information about the bot and important update notices
/help Get information about the bot and important update notices
Documentation
Every command the Team Up bot registers — 38 slash commands and 4 right-click message actions, 153 runnable subcommands in total. Search it, or filter by what it does and who can run it.
This page is generated from the same command list the bot registers with Discord, so it always matches what you see in the client. 33 commands are restricted to administrators by default — see command permissions to open them up to your members.
Start here if you have just added the bot.
Get information about the bot and important update notices
/help Get information about the bot and important update notices
Record results, adjust ratings, and fix mistakes. Includes the right-click message actions that parse results out of a chat message.
Challenge another player to a 1v1 match
/challenge Challenge another player to a 1v1 match
| Option | Type | What it does |
|---|---|---|
| player * | user | The player you want to challenge |
* required
Record match results and update player ratings
/record_match elo Record match results and update ratings for any game format (1v1, 2v2, FFA, etc)
| Option | Type | What it does |
|---|---|---|
| 1st_place * | text | First place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 2nd_place | text | Second place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 3rd_place | text | Third place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 4th_place | text | Fourth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 5th_place | text | Fifth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 6th_place | text | Sixth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 7th_place | text | Seventh place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 8th_place | text | Eighth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 9th_place | text | Ninth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 10th_place | text | Tenth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| leaderboard | text | Optional: Leaderboard name. Default: 'default' |
| multiplier | number min 0.01 | Optional: weight this match's Elo change (e.g. 0.5 = half, 2 = double). Default: 1 |
* required
/record_match manual Manually record a match with specific rating changes (works for single player adjustments too)
| Option | Type | What it does |
|---|---|---|
| 1st_place * | text | First place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 1st_place_delta * | integer | Rating change for 1st place (positive to increase, negative to decrease) |
| 2nd_place | text | Second place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 2nd_place_delta | integer | Rating change for 2nd place (positive to increase, negative to decrease) |
| 3rd_place | text | Third place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 3rd_place_delta | integer | Rating change for 3rd place (positive to increase, negative to decrease) |
| 4th_place | text | Fourth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 4th_place_delta | integer | Rating change for 4th place (positive to increase, negative to decrease) |
| 5th_place | text | Fifth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 5th_place_delta | integer | Rating change for 5th place (positive to increase, negative to decrease) |
| 6th_place | text | Sixth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 6th_place_delta | integer | Rating change for 6th place (positive to increase, negative to decrease) |
| 7th_place | text | Seventh place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 7th_place_delta | integer | Rating change for 7th place (positive to increase, negative to decrease) |
| 8th_place | text | Eighth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 8th_place_delta | integer | Rating change for 8th place (positive to increase, negative to decrease) |
| 9th_place | text | Ninth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 9th_place_delta | integer | Rating change for 9th place (positive to increase, negative to decrease) |
| 10th_place | text | Tenth place player(s). For teams, group with parentheses like: (@player1 @player2) |
| 10th_place_delta | integer | Rating change for 10th place (positive to increase, negative to decrease) |
| leaderboard | text | Optional: Leaderboard name. Default: 'default' |
* required
/record_match quick Quick 1v1 match recording - a faster way to log simple 1v1 matches
| Option | Type | What it does |
|---|---|---|
| opponent * | user | Tag your opponent (@player) |
| winner | text | Who won the match? Choices: me, opponent |
| leaderboard | text | Optional: Leaderboard name. Default: 'default' |
| multiplier | number min 0.01 | Optional: weight this match's Elo change (e.g. 0.5 = half, 2 = double). Default: 1 |
* required
/record_match team_alias Record match results using predefined team names (requires teams created with /team_admin)
| Option | Type | What it does |
|---|---|---|
| 1st_place * | text | First place team name (use team alias, not @mentions) |
| 2nd_place | text | Second place team name (use team alias, not @mentions) |
| 3rd_place | text | Third place team name (use team alias, not @mentions) |
| 4th_place | text | Fourth place team name (use team alias, not @mentions) |
| 5th_place | text | Fifth place team name (use team alias, not @mentions) |
| 6th_place | text | Sixth place team name (use team alias, not @mentions) |
| 7th_place | text | Seventh place team name (use team alias, not @mentions) |
| 8th_place | text | Eighth place team name (use team alias, not @mentions) |
| 9th_place | text | Ninth place team name (use team alias, not @mentions) |
| 10th_place | text | Tenth place team name (use team alias, not @mentions) |
| 11th_place | text | Eleventh place team name (use team alias, not @mentions) |
| 12th_place | text | Twelfth place team name (use team alias, not @mentions) |
| 13th_place | text | Thirteenth place team name (use team alias, not @mentions) |
| 14th_place | text | Fourteenth place team name (use team alias, not @mentions) |
| 15th_place | text | Fifteenth place team name (use team alias, not @mentions) |
| 16th_place | text | Sixteenth place team name (use team alias, not @mentions) |
| 17th_place | text | Seventeenth place team name (use team alias, not @mentions) |
| 18th_place | text | Eighteenth place team name (use team alias, not @mentions) |
| 19th_place | text | Nineteenth place team name (use team alias, not @mentions) |
| 20th_place | text | Twentieth place team name (use team alias, not @mentions) |
| 21st_place | text | Twenty-first place team name (use team alias, not @mentions) |
| 22nd_place | text | Twenty-second place team name (use team alias, not @mentions) |
| 23rd_place | text | Twenty-third place team name (use team alias, not @mentions) |
| leaderboard | text | Optional: Leaderboard name. Default: 'default' |
| multiplier | number min 0.01 | Optional: weight this match's Elo change (e.g. 0.5 = half, 2 = double). Default: 1 |
* required
/record_match stats Record a match where rating changes are calculated from custom stat values (Stat Points mode)
| Option | Type | What it does |
|---|---|---|
| players * | text | Player(s) to record stats for (e.g., @player1 @player2) |
| leaderboard | text | Optional: Leaderboard name. Default: 'default' |
* required
/record_match undo Undo the last recorded match in this leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/record_match screenshot Read a post-match scoreboard screenshot with AI and record it after you confirm
| Option | Type | What it does |
|---|---|---|
| screenshot * | attachment | Screenshot of the post-match scoreboard (PNG/JPG) |
| players * | text | @mention everyone in the match (the AI matches in-game names to these members) |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/set_rating player Set a player's rating manually
| Option | Type | What it does |
|---|---|---|
| player * | user | The player to set the rating for |
| rating * | integer | The new rating to set |
| rating_type | text | Type of rating to set (uses default if not specified) Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, player_choices |
| leaderboard | text | The leaderboard to set the rating on (defaults to 'default') |
| team_size | integer min 1 | Team size (required for Player Broad rating type) |
| versus | text | Match format (required for Player Specific rating type e.g. '2v2', '1v1v1') |
| matches | integer min 0 | Number of matches played (optional) |
* required
/set_rating team Set a team's rating manually
| Option | Type | What it does |
|---|---|---|
| members * | text | The team members (mention multiple users) |
| rating * | integer | The new rating to set |
| rating_type | text | Type of rating to set (uses default if not specified) Choices: team_broad, team_specific |
| leaderboard | text | The leaderboard to set the rating on (defaults to 'default') |
| team_size | integer min 1 | Team size (required for Team Broad rating type) |
| versus | text | Match format (required for Team Specific rating type e.g. '2v2', '1v1v1') |
| matches | integer min 0 | Number of matches played (optional) |
* required
Right-click a message → Apps → Mobile Result Format. Same as PC Result Format, but each command is posted as its own message so it can be copied with one tap on mobile.
Mobile Result Format Right-click a message → Apps → PC Result Format. Parses the message into ready-made `/record_match elo` commands inside code blocks, for copy-paste on desktop.
PC Result Format Right-click a message → Apps → Record Result. Now an alias of Parse Game Stats — same parser, same preview, same Record Match button. Kept for discoverability and slated for deprecation.
Record Result Right-click a message → Apps → Parse Game Stats. Reads match results and per-player stats out of the message text (e.g. `(map=dust) 1 @player1 (kills=3) 2 @player2 (kills=1)`) and shows a preview with a Record Match button.
Parse Game Stats /score Submit your team's score for a cumulative match
| Option | Type | What it does |
|---|---|---|
| score * | number | Your team's score for this round |
* required
Queues that form matches automatically, hosted lobbies players join by button, map pools, and position selection.
/host Create a matchmaking lobby for other players to join.
| Option | Type | What it does |
|---|---|---|
| lobby * | text | The description of your matchmaking lobby |
| versus * | text | Ex. 5v5, 10v10 |
| team_formation | text | The way teams are selected when the match starts. Choices: players_choose, players_choose_positions, random, random_anonymous, random_positions, captains_host_picks, balance_elo, no_teams |
| leaderboard | text | Display Elo ratings from a leaderboard of your choosing. Enter the leaderboard name. |
| custom_invite_code | text | Share a code for the game server if needed. Ex. 12345 |
| match_result | text | How match results affect ratings and who approves them. Choices: disabled, ranked, ranked_admin, ranked_admin_decide, unranked, unranked_admin, unranked_admin_decide |
| competitive_format | text | Single match (auto-close after recording) or endless (multiple matches per lobby). Choices: single_match, endless_matches |
* required
/queue_ffa headless Automatic matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this queue (max 32 chars) |
| title * | text | Display title for the queue |
| description * | text | Description of the queue |
| match_start_channel * | channel | Channel where match creation notifications are sent |
| match_end_channel * | channel | Channel for listing finished matches |
| min_players * | integer min 2 | Minimum players required to start a match (default: 2) |
| max_players | integer min 2 | Maximum players in a match (default: min_players) |
| join_grace_period | integer min 0 | Minutes to wait for more players after minimum is reached (default: 2) |
| leaderboard | text | Leaderboard to use for Elo ratings (defaults to 'default') |
| match_result | text | How match results are handled (default: Ranked) Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| max_elo_difference | integer min 0 | Maximum Elo difference between players (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes before a player times out from the queue (default: 10) |
| join_notification_channel | channel | Channel for queue join/leave notifications |
| join_notification_role | role | Role to mention when players join/leave the queue |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
/queue_ffa hosted User-hosted lobby launcher
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this launcher (max 32 chars) |
| title * | text | Display title for the launcher |
| description * | text | Description of the launcher |
| match_start_channel * | channel | Channel where active lobbies are listed |
| match_end_channel * | channel | Channel for listing finished matches |
| min_players * | integer min 2 | Minimum players required to start a match (default: 2) |
| max_players | integer min 2 | Maximum players in a match (default: min_players) |
| leaderboard | text | Leaderboard to use for Elo ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between players (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes of inactivity before a lobby auto-closes when not full (default: 60) |
| join_notification_channel | channel | Channel for lobby join/leave notifications |
| join_notification_role | role | Role to mention when players join/leave the lobby |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
Create a co-operative queue or lobby launcher
/queue_coop headless Automatic matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this queue (max 32 chars) |
| title * | text | Display title for the queue |
| description * | text | Description of the queue |
| match_start_channel * | channel | Channel where match creation notifications are sent |
| match_end_channel * | channel | Channel for listing finished matches |
| min_players * | integer min 2 | Minimum players required to start a match (default: 2) |
| max_players | integer min 2 | Maximum players in a match (default: 8) |
| join_grace_period | integer min 0 | Minutes to wait for more players after minimum is reached (default: 2) |
| idle_timeout_minutes | integer min 1 | Minutes before a player times out from the queue (default: 10) |
| join_notification_channel | channel | Channel for queue join/leave notifications |
| join_notification_role | role | Role to mention when players join/leave the queue |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
* required
/queue_coop hosted User-hosted lobby launcher
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this launcher (max 32 chars) |
| title * | text | Display title for the launcher |
| description * | text | Description of the launcher |
| match_start_channel * | channel | Channel where active lobbies are listed |
| match_end_channel * | channel | Channel for listing finished matches |
| party_size | integer 2–20 | Number of players needed to fill a lobby (default: 4) |
| idle_timeout_minutes | integer min 1 | Minutes of inactivity before a lobby auto-closes when not full (default: 60) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
/queue_versus headless Automatic matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this queue (max 32 chars) |
| title * | text | Display title for the queue |
| description * | text | Description of the queue |
| team_size * | integer 1–25 | Number of players per team (always 2 teams) |
| match_start_channel * | channel | Channel where match creation notifications are sent |
| match_end_channel * | channel | Channel for listing finished matches |
| leaderboard | text | Leaderboard to use for Elo ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between players (default: unlimited) |
| team_formation | text | How teams are formed Choices: random_teams, balanced_teams, players_choose, captains_highest_elo, captains_lowest_elo, captains_random, captains_volunteer |
| idle_timeout_minutes | integer min 1 | Minutes before a player times out from the queue (default: 10) |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple, captains_ban_with_reroll, captains_ban_no_reroll, stage_striking, stage_striking_counterpick |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| join_notification_channel | channel | Channel for queue join notifications |
| join_notification_role | role | Role to mention when players join the queue |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| audit_channel | channel | Channel for logging match events (scores, disputes, results) |
| screenshot_channel | channel | Channel where players can upload match screenshots |
| post_match_instructions | text | Instructions shown when voting on match results |
| queue_password | text | Password required to join this queue (leave empty for no password) |
* required
/queue_versus hosted User-hosted lobby launcher
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this launcher (max 32 chars) |
| title * | text | Display title for the launcher |
| description * | text | Description of the launcher |
| team_size * | integer min 1 | Number of players per team (e.g., 1 for 1v1, 2 for 2v2) |
| match_start_channel * | channel | Channel where active lobbies are listed |
| match_end_channel * | channel | Channel for listing finished matches |
| leaderboard | text | Leaderboard to use for Elo ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between players (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes of inactivity before a lobby auto-closes when not full (default: 60) |
| team_formation | text | How teams are formed Choices: random_teams, balanced_teams, players_choose, captains_host_picks, captains_highest_elo, captains_lowest_elo, captains_random, captains_volunteer |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple, captains_ban_with_reroll, captains_ban_no_reroll, stage_striking, stage_striking_counterpick |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| audit_channel | channel | Channel for logging match events (scores, disputes, results) |
| screenshot_channel | channel | Channel where players can upload match screenshots |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
Create a team-based queue or lobby launcher for predefined teams
/queue_team headless Automatic matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this queue (max 32 chars) |
| title * | text | Display title for the queue |
| description * | text | Description of the queue |
| team_size * | integer min 1 | Size of teams that can join this queue (e.g., 5 for 5-player teams) |
| match_start_channel * | channel | Channel where match creation notifications are sent |
| match_end_channel * | channel | Channel for listing finished matches |
| leaderboard | text | Leaderboard to use for team ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between teams (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes before a team times out from the queue (default: 10) |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple, captains_ban_with_reroll, captains_ban_no_reroll, stage_striking, stage_striking_counterpick |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| join_notification_channel | channel | Channel for queue join notifications |
| join_notification_role | role | Role to mention when teams join the queue |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
/queue_team hosted User-hosted lobby launcher
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this launcher (max 32 chars) |
| title * | text | Display title for the launcher |
| description * | text | Description of the launcher |
| team_size * | integer min 1 | Size of predefined teams that can join |
| match_start_channel * | channel | Channel where active lobbies are listed |
| match_end_channel * | channel | Channel for listing finished matches |
| leaderboard | text | Leaderboard to use for team ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between teams (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes of inactivity before a lobby auto-closes when not full (default: 60) |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple, captains_ban_with_reroll, captains_ban_no_reroll, stage_striking, stage_striking_counterpick |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
Create an anonymous queue or lobby launcher (random hidden teams)
/queue_anonymous headless Automatic matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this queue (max 32 chars) |
| title * | text | Display title for the queue |
| description * | text | Description of the queue |
| team_1_size * | integer 1–25 | Number of players on team 1 |
| team_2_size * | integer 1–25 | Number of players on team 2 |
| match_start_channel * | channel | Channel where match creation notifications are sent |
| match_end_channel * | channel | Channel for listing finished matches |
| leaderboard | text | Leaderboard to use for Elo ratings (defaults to 'default') |
| max_elo_difference | integer min 0 | Maximum Elo difference between players (default: unlimited) |
| idle_timeout_minutes | integer min 1 | Minutes before a player times out from the queue (default: 10) |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| join_notification_channel | channel | Channel for queue join notifications |
| join_notification_role | role | Role to mention when players join the queue |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
/queue_anonymous hosted User-hosted lobby launcher
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Unique name for this launcher (max 32 chars) |
| title * | text | Display title for the launcher |
| description * | text | Description of the launcher |
| team_1_size * | integer 1–25 | Number of players on team 1 |
| team_2_size * | integer 1–25 | Number of players on team 2 |
| match_start_channel * | channel | Channel where active lobbies are listed |
| match_end_channel * | channel | Channel for listing finished matches |
| idle_timeout_minutes | integer min 1 | Minutes of inactivity before a lobby auto-closes when not full (default: 60) |
| match_result | text | How match results are handled Choices: disabled, ranked, ranked_admin, unranked, unranked_admin, ranked_admin_decide, unranked_admin_decide |
| competitive_format | text | Format for match recording Choices: single_match, endless_matches, best_of, cumulative |
| matches | integer 1–99 | Number of matches/rounds (required for Best Of or Cumulative formats) |
| map_pool | text | Name of the map pool to use (created via /map_pool add) |
| map_voting_strategy | text | How maps are selected for matches Choices: simple |
| category_for_temp_channel | channel | Category for temporary channels created during matches |
| dispute_notification_channel | channel | Channel for dispute notifications |
| dispute_notification_role | role | Role to mention when disputes are raised |
| post_match_instructions | text | Instructions shown when voting on match results |
* required
/queue_manage list List all active matchmaking queues
/queue_manage delete Delete a matchmaking queue
| Option | Type | What it does |
|---|---|---|
| queue_name * | text | Name of the queue to delete |
* required
/queue_manage clear_stuck Clear stuck/orphaned hosted lobbies blocking players from joining new ones
| Option | Type | What it does |
|---|---|---|
| player | user | Only clear lobbies blocking this player (leave empty to sweep the whole server) |
* required
Manage positions for lobbies with position selection
/positions set Set or update positions (merges with existing positions)
| Option | Type | What it does |
|---|---|---|
| position_1 | text | The first position |
| position_2 | text | The second position |
| position_3 | text | The third position |
| position_4 | text | The fourth position |
| position_5 | text | The fifth position |
| position_6 | text | The sixth position |
| position_7 | text | The seventh position |
| position_8 | text | The eighth position |
| position_9 | text | The ninth position |
| position_10 | text | The tenth position |
| position_11 | text | The eleventh position |
| position_12 | text | The twelfth position |
| position_13 | text | The thirteenth position |
| position_14 | text | The fourteenth position |
| position_15 | text | The fifteenth position |
| position_16 | text | The sixteenth position |
| position_17 | text | The seventeenth position |
| position_18 | text | The eighteenth position |
| position_19 | text | The nineteenth position |
| position_20 | text | The twentieth position |
* required
/positions view View currently configured positions
/positions delete Delete all configured positions
| Option | Type | What it does |
|---|---|---|
| confirmation * | text | Confirm deletion of all positions Choices: no, confirm |
* required
/map_pool add Add a map to a pool
| Option | Type | What it does |
|---|---|---|
| pool * | text | The map pool name (e.g., 'valorant-ranked', 'cs2-comp') |
| map_name * | text | The name of the map to add |
| map_image_url | text | URL to the map image (optional) |
| stage_type | text | Stage type for stage striking modes (starter or counterpick) Choices: starter, counterpick |
* required
/map_pool remove Remove a map from a pool
| Option | Type | What it does |
|---|---|---|
| pool * | text | The map pool name |
| map_name * | text | The name of the map to remove |
* required
/map_pool list List maps in a pool or all pools
| Option | Type | What it does |
|---|---|---|
| pool | text | The map pool to list (leave empty to list all pools) |
* required
/map_pool clear Remove all maps from a pool
| Option | Type | What it does |
|---|---|---|
| pool * | text | The map pool to clear |
* required
/map_pool set_default Set the default map pool for this server
| Option | Type | What it does |
|---|---|---|
| pool * | text | The map pool to set as default |
* required
/map_pool set_channel Set a map pool for a specific channel
| Option | Type | What it does |
|---|---|---|
| pool * | text | The map pool to use in this channel |
| channel | channel | The channel (defaults to current channel if not specified) |
* required
/map_vote Start a map vote for players
| Option | Type | What it does |
|---|---|---|
| players | text | Players voting (comma-separated mentions, e.g., @user1, @user2) |
| team_red_players | text | Team Red players (comma-separated mentions, for team-based voting) |
| team_blue_players | text | Team Blue players (comma-separated mentions, for team-based voting) |
| map_pool | text | Map pool to use (uses channel → server default if not specified) |
| strategy | text | Voting strategy Choices: simple, captains_ban_with_reroll, stage_striking, stage_striking_counterpick |
* required
Post and manage leaderboards, rank tiers, server defaults, and rating visibility.
View or set the default leaderboard for this server
/default_leaderboard set Set the default leaderboard to use when none is specified
| Option | Type | What it does |
|---|---|---|
| leaderboard * | text | Name of the leaderboard to set as default |
* required
/default_leaderboard view View the current default leaderboard
/default_leaderboard reset Reset to use 'default' as the default leaderboard
Manage the default rating type for this server
/default_rating_type set Set the default rating type for this server
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | The rating type to set as default Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, team_alias_global, team_alias_broad, team_alias_specific, player_choices, choice |
| team_size | integer min 1 | Required for broad rating types (e.g., 2 for 2s) |
| versus | text | Required for specific rating types (e.g., '2v2') |
* required
/default_rating_type view View the current default rating type
/default_rating_type reset Reset to the system default rating type (Player Global All)
Manage player rating visibility on leaderboards
/hide_rating hide Hide a player's rating
| Option | Type | What it does |
|---|---|---|
| player * | user | The player to hide |
| leaderboard | text | Specific leaderboard (leave empty for global hide) |
* required
/hide_rating show Show a player's rating
| Option | Type | What it does |
|---|---|---|
| player * | user | The player to show |
| leaderboard | text | Specific leaderboard (leave empty for global show) |
* required
/hide_rating list List hidden players
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Show hidden players for specific leaderboard (leave empty for globally hidden) |
* required
/leaderboard display_leaderboard Create an auto-updating leaderboard message in the current channel
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | Type of rating to display Choices: player, team, team_alias, player_choices, choice, player_global_even, player_global_uneven |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| team_size | integer min 1 | Filter by team size (e.g., 2 for duos, 3 for trios) |
| versus | text | Filter by match format (e.g., '2v2', '3v3', '1v1v1') |
| limit | integer 1–250 | Number of players/teams to display (max 250) |
| show_rating | true/false | Show player ratings (default: Yes) |
| show_record | true/false | Show win/loss/draw record |
| show_winrate | true/false | Show win rate percentage |
| show_count | true/false | Show match count for each player |
| ordinal_suffix | true/false | Use ordinal format for rankings (4th instead of 4.) |
| custom_link | text | Custom URL to replace the default leaderboard website link (PRO) |
| rank_by | text | How to rank players (default: Rating) Choices: rating, wins, net_wins, win_rate, matches |
* required
/leaderboard display_history Create a message showing recent matches
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| rating_type | text | Type of rating to display Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, team_alias_broad, team_alias_specific, player_choices, choice |
| player | user | Filter matches to only show those involving this player |
| team_size | integer min 1 | Team size for broad rating types (e.g., 2 for 2v2) |
| versus | text | Match format for specific rating types (e.g., '2v2', '1v1v1') |
| limit | integer 1–25 | Number of recent matches to display (max 25) |
* required
/leaderboard list View all leaderboards for this server
/tiers create Create or update a tier with role association
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | Type of rating Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, player_choices |
| required_elo * | integer | Required ELO rating for this tier |
| role * | role | Discord role for this tier |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers create_rank Create or update a rank-based tier with role association
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | Type of rating Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, player_choices |
| rank * | integer min 1 | Required rank for this tier (e.g., 1 for top 1, 10 for top 10) |
| role * | role | Discord role for this tier |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers remove Remove a specific tier role
| Option | Type | What it does |
|---|---|---|
| role * | role | The role to remove from tier lists |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers clear Remove all tiers from a specific rating type
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | Type of rating to clear tiers from Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, player_choices |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers clear_rank Remove all rank-based tiers from a specific rating type
| Option | Type | What it does |
|---|---|---|
| rating_type * | text | Type of rating to clear rank tiers from Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, team_broad, team_specific, player_choices |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers clear_all Remove all tiers from all rating types in a leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/tiers view View tiers and their associated roles for a leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
* required
/ratings View your ratings across featured leaderboards
| Option | Type | What it does |
|---|---|---|
| user | user | Player to view ratings for (defaults to yourself) |
* required
/stats view Privately view stats — only you see the result
| Option | Type | What it does |
|---|---|---|
| leaderboard * | text autocomplete | Public leaderboard to pull stats from |
| user | user | Player to look up (defaults to yourself) |
* required
Look up stats and open the profile and branding settings that are edited on the web dashboard.
View your own player statistics (ephemeral — only you can see it)
/mystats View your own player statistics (ephemeral — only you can see it)
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| rating_type | text | Type of rating to display (defaults to global) Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, player_choices |
| team_size | integer min 1 | Team size for broad rating types (e.g., 2 for 2v2, 2v2v2, etc) |
| versus | text | Match format for specific rating types (e.g., '2v2', '1v1v1') |
* required
/player stats View detailed player statistics and rating history
| Option | Type | What it does |
|---|---|---|
| user | user | Player to view stats for (defaults to yourself) |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| rating_type | text | Type of rating to display (defaults to global) Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, player_choices |
| team_size | integer min 1 | Team size for broad rating types (e.g., 2 for 2v2, 2v2v2, etc) |
| versus | text | Match format for specific rating types (e.g., '2v2', '1v1v1') |
* required
/player compare Compare stats between two players
| Option | Type | What it does |
|---|---|---|
| player_to_compare * | user | Player to compare with (if no 'compare_with' is given, compares with you) |
| compare_with | user | Optional: Compare with this player instead of yourself |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| rating_type | text | Type of rating to display (defaults to global) Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, player_choices |
| team_size | integer min 1 | Team size for broad rating types (e.g., 2 for 2v2) |
| versus | text | Match format for specific rating types (e.g., '2v2', '1v1v1') |
* required
View profile & branding settings and open the web dashboard to edit them
/profile server View the server / league identity settings and get the edit link
/profile player View your (or another player's) profile settings and get the edit link
| Option | Type | What it does |
|---|---|---|
| player | user | The player to view (leave blank for your own profile) |
* required
/profile team View a team's profile settings and get the edit link
| Option | Type | What it does |
|---|---|---|
| team_id | text | Team alias id (leave blank to open the teams list) |
* required
/profile leaderboard View a leaderboard's identity settings and get the edit link
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Leaderboard name (defaults to "default") |
* required
Named teams with their own rosters and ratings.
View and manage team profiles and statistics
/team stats View detailed team statistics and rating history
| Option | Type | What it does |
|---|---|---|
| team_name * | text | Name of the team to view stats for |
| team_size * | integer min 1 | Size of the team (number of members) |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| time_period | text | Time period for stats Choices: all, 30days, 90days, 10matches, 25matches |
| rating_type | text | Type of rating to display Choices: team_broad, team_specific |
* required
/team compare Compare statistics between two teams
| Option | Type | What it does |
|---|---|---|
| first_team_name * | text | Name of the first team to compare |
| first_team_size * | integer min 1 | Size of the first team |
| second_team_name * | text | Name of the second team to compare |
| second_team_size * | integer min 1 | Size of the second team |
| leaderboard | text | Name of the leaderboard (defaults to 'default') |
| rating_type | text | Type of rating to display Choices: team_broad, team_specific |
* required
Create and manage teams
/team_admin create Create a new team with specified size and optional members
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Unique identifier for the team |
| team_size * | integer min 1 | Number of players on this team |
| members | text | Initial team members (mention multiple users) - optional |
* required
/team_admin list List all teams on this server
| Option | Type | What it does |
|---|---|---|
| team_size | integer min 1 | Filter teams by size (optional) |
* required
/team_admin modify Modify an existing team's roster or size
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Identifier of the team to modify |
| members | text | Updated team members (mention users) - omit to remove all members |
| team_size | integer min 1 | Updated maximum team size |
* required
/team_admin add_member Add a single member to an existing team
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Identifier of the team |
| player * | user | Player to add to the team |
* required
/team_admin remove_member Remove a single member from an existing team
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Identifier of the team |
| player * | user | Player to remove from the team |
* required
/team_admin set_captain Set or remove the captain for a team (captains submit match results)
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Identifier of the team |
| captain | user | Player to designate as captain (omit to remove captain) |
* required
/team_admin delete Delete an existing team
| Option | Type | What it does |
|---|---|---|
| team_id * | text | Name of the team to delete |
| confirmation * | text | Confirm deletion of the team Choices: no, confirm |
* required
Bracket schedules and live tournament messages in Discord. Tournaments are created and run from the web dashboard.
Tournament schedule and live tournament messages
/tournaments schedule Post the tournament schedule — members register right from its buttons
| Option | Type | What it does |
|---|---|---|
| filter | text | Which tournaments to show (default: upcoming & live) Choices: upcoming, past |
* required
/tournaments view Privately preview a tournament embed — only you see the result
| Option | Type | What it does |
|---|---|---|
| tournament * | text autocomplete | Which tournament to view |
* required
/tournaments display Post the live tournament message — auto-updates as the event progresses
| Option | Type | What it does |
|---|---|---|
| tournament * | text autocomplete | Which tournament to display |
* required
Rating math, server-wide defaults, per-channel behaviour, and custom match statistics.
Configure channel-specific settings for leaderboards
/channel_config set Set channel configuration
| Option | Type | What it does |
|---|---|---|
| leaderboard * | text | Leaderboard name to associate with this channel |
| secondary_leaderboard | text | Optional secondary leaderboard for dual command generation |
| channel_id | channel | Channel to configure (defaults to current channel) |
| reporting_channel_id | channel | Channel where successful match recordings should be posted |
* required
/channel_config remove Remove channel configuration
| Option | Type | What it does |
|---|---|---|
| channel_id | channel | Channel to remove configuration from (defaults to current channel) |
* required
/channel_config view View channel configuration
| Option | Type | What it does |
|---|---|---|
| channel_id | channel | Channel to view configuration for (defaults to current channel) |
* required
/channel_config tier_notification enable Enable tier notifications in a channel (replaces any previously set channel)
| Option | Type | What it does |
|---|---|---|
| channel_id | channel | Channel to send tier notifications to (defaults to current channel) |
* required
/channel_config tier_notification disable Disable tier notifications for this server
Configure Elo rating settings for leaderboards
/leaderboard_config basics set Set basic Elo configuration values
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| lock | text | Lock or unlock a leaderboard for match recording Choices: lock, unlock |
| default_rating | integer | Default Elo rating for new players (default: 1200) |
| k_factor | integer min 1 | K-factor for Elo calculations (default: 32) |
| precision | text | Precision for Elo ratings Choices: rounded, 2_decimal, full |
| loss_dampen | integer 0–100 | Percentage to reduce Elo losses (0-100, default: 0) |
| min_rating | integer | Minimum rating floor - ratings cannot drop below this value (default: disabled) |
* required
/leaderboard_config basics view View basic Elo configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config basics reset Reset a basic Elo setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: lock, elo_default_rating, elo_k_factor, elo_precision, elo_loss_dampen, elo_min_rating |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config curve set Set advanced curve configuration values
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| max_advantage | integer min 1 | Max rating difference that affects Elo calculation |
| influence_range | integer min 1 | Rating difference range for probability calculation (default: 400) |
| curve_factor | integer min 1 | Base of the exponent in Elo formula (default: 10) |
| ffa_distribution | true/false | Distribute Elo changes in free-for-all matches |
* required
/leaderboard_config curve view View advanced curve configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config curve reset Reset an advanced curve setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: elo_max_advantage, elo_influence_range, elo_curve_factor, elo_ffa_distribution |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config ranking set Set ranking display configuration values
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| matches_required | integer min 0 | Number of matches required before ranking is displayed |
| inactive_days | integer min 0 | Hide players/teams inactive for this many days (0 = never hide) |
* required
/leaderboard_config ranking view View ranking display configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config ranking reset Reset a ranking display setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: matches_required_for_ranking, inactive_days_threshold |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config caps set Set Elo cap configuration values
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| cap_range | integer min 1 | Rating difference limit for capping calculations (default: 400) |
| cap_favorite_win | true/false | Whether to cap rating gains when favorites win (default: true) |
| cap_favorite_loss | true/false | Whether to cap rating losses when favorites lose (default: true) |
| cap_underdog_win | true/false | Whether to cap rating gains when underdogs win (default: true) |
| cap_underdog_loss | true/false | Whether to cap rating losses when underdogs lose (default: true) |
* required
/leaderboard_config caps view View Elo cap configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config caps reset Reset an Elo cap setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: elo_cap_range, elo_cap_favorite_win_impact, elo_cap_favorite_loss_impact, elo_cap_underdog_win_impact, elo_cap_underdog_loss_impact |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config farming set Set farming detection configuration values
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| farming_detection | true/false | Enable/disable Elo farming detection alerts |
| farming_threshold | integer 2–10 | Consecutive wins against same player to trigger alert (default: 2) |
| farming_channel | channel | Channel to send farming alerts to |
| farming_role | role | Role to ping when farming is detected |
* required
/leaderboard_config farming view View farming detection configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config farming reset Reset a farming detection setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: farming_detection_enabled, farming_streak_threshold, farming_notification_channel, farming_notification_role |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config casual_policy set Set casual policy controls for this leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
| update_elo | true/false | Update Elo ratings for casual matches (default: false) |
| update_win_loss | true/false | Update win/loss/draw records (default: false) |
| update_match_count | true/false | Increment match count (default: true) |
| update_head_to_head | true/false | Update head-to-head records (default: false) |
| collect_custom_stats | true/false | Store per-player custom stats (default: true) |
| aggregate_custom_stats | true/false | Update running stat aggregates used for rankings (default: false) |
* required
/leaderboard_config casual_policy view View the casual policy for this leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config casual_policy reset Reset leaderboard casual policy (inherit from server)
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config screenshot_instructions set Set scoreboard-reading instructions for a leaderboard
| Option | Type | What it does |
|---|---|---|
| instructions * | text | How to read this game's scoreboard (columns, separators, winner) |
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config screenshot_instructions view View the scoreboard-reading instructions in effect for a leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config screenshot_instructions reset Clear a leaderboard's instructions (falls back to server default)
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config all view View all Elo configuration settings
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Name of the leaderboard (defaults to channel default) |
* required
/leaderboard_config all copy Generate commands to copy settings from one leaderboard to another
| Option | Type | What it does |
|---|---|---|
| from * | text | Source leaderboard to copy settings from |
| to * | text | Destination leaderboard to copy settings to |
* required
/server_config featured_rating add Add a featured rating
| Option | Type | What it does |
|---|---|---|
| leaderboard * | text | Leaderboard to feature |
| rating_type * | text | Type of rating to display Choices: player_global_all, player_global_even, player_global_uneven, player_broad, player_specific, player_choices, choice |
| team_size | integer 1–10 | Team size (required for By Team Size rating type) |
| versus | text | Match format (required for By Format, e.g., 1v1, 2v2v2) |
| custom_url | text | Custom URL slug for direct link to this ranking (e.g. cs-ranked). Requires PRO. |
* required
/server_config featured_rating remove Remove a featured rating
| Option | Type | What it does |
|---|---|---|
| position * | integer min 1 | Position to remove (use list to see positions) |
* required
/server_config featured_rating list List all configured featured ratings
/server_config audit set Set the audit channel
| Option | Type | What it does |
|---|---|---|
| channel * | channel | Channel to send audit logs to |
* required
/server_config audit view View the current audit channel
/server_config audit remove Remove the audit channel (disable audit logging)
/server_config elo set Set server-wide Elo default values
| Option | Type | What it does |
|---|---|---|
| default_rating | integer | Default Elo rating for new players (default: 1200) |
| k_factor | integer min 1 | K-factor for Elo calculations (default: 32) |
| precision | text | Precision for Elo ratings Choices: rounded, 2_decimal, full |
| loss_dampen | integer 0–100 | Percentage to reduce Elo losses (0-100, default: 0) |
| min_rating | integer | Minimum rating floor - ratings cannot drop below this value (default: disabled) |
| max_advantage | integer min 1 | Max rating difference that affects Elo calculation (default: unlimited) |
| influence_range | integer min 1 | Rating difference range for probability calculation (default: 400) |
| curve_factor | integer min 1 | Base of the exponent in Elo formula (default: 10) |
| ffa_distribution | true/false | Distribute Elo changes in FFA matches (default: true) |
| matches_required | integer min 0 | Matches required before appearing on leaderboard (default: 0) |
| cap_range | integer min 1 | Rating difference range for capping (default: 400) |
| cap_favorite_win | true/false | Cap impact when favorite wins (default: true) |
| cap_favorite_loss | true/false | Cap impact when favorite loses (default: true) |
| cap_underdog_win | true/false | Cap impact when underdog wins (default: true) |
| cap_underdog_loss | true/false | Cap impact when underdog loses (default: true) |
* required
/server_config elo view View core server-wide Elo default settings
/server_config elo reset Reset a server-wide Elo setting to its default value
| Option | Type | What it does |
|---|---|---|
| setting * | text | The setting to reset Choices: elo_default_rating, elo_k_factor, elo_precision, elo_loss_dampen, elo_min_rating, elo_max_advantage, elo_influence_range, elo_curve_factor, elo_ffa_distribution, matches_required_for_ranking, elo_cap_range, elo_cap_favorite_win_impact, elo_cap_favorite_loss_impact, elo_cap_underdog_win_impact, elo_cap_underdog_loss_impact |
* required
/server_config elo all View all server-wide Elo default settings
/server_config casual_policy set Set server-wide casual policy controls
| Option | Type | What it does |
|---|---|---|
| update_elo | true/false | Update Elo ratings for casual matches (default: false) |
| update_win_loss | true/false | Update win/loss/draw records (default: false) |
| update_match_count | true/false | Increment match count (default: true) |
| update_head_to_head | true/false | Update head-to-head records (default: false) |
| collect_custom_stats | true/false | Store per-player custom stats (default: true) |
| aggregate_custom_stats | true/false | Update running stat aggregates used for rankings (default: false) |
* required
/server_config casual_policy view View the current server-wide casual policy
/server_config casual_policy reset Reset casual policy to built-in defaults
/server_config screenshot_instructions set Set the server-wide default scoreboard-reading instructions
| Option | Type | What it does |
|---|---|---|
| instructions * | text | How to read scoreboards by default (columns, separators, winner) |
* required
/server_config screenshot_instructions view View the server-wide default scoreboard-reading instructions
/server_config screenshot_instructions reset Clear the server-wide default scoreboard-reading instructions
Define custom statistics to track for matches
/custom_stats define_number Define a numeric stat (kills, score, etc.) with aggregations
| Option | Type | What it does |
|---|---|---|
| name * | text | Unique name for the stat (e.g., kills, score, delta_from_par) |
| scope * | text | Per-player, per-match, or per-team (team = AI scan winner input, number only) Choices: player, match, team |
| aggregates * | text | Comma-separated: sum, avg, min, max (e.g., 'sum,avg') |
| label | text | Display label shown in forms (defaults to name) |
| points | number | Points per unit for Stat Points recording mode (e.g., 2 means each unit = 2 points) |
| leaderboard | text | Leaderboard to add stat to (defaults to 'default') |
* required
/custom_stats define_text Define a text stat (map name, game mode, etc.) with count tracking
| Option | Type | What it does |
|---|---|---|
| name * | text | Unique name for the stat (e.g., map, game_mode) |
| scope * | text | Whether this stat is per-player or per-match Choices: player, match |
| label | text | Display label shown in forms (defaults to name) |
| leaderboard | text | Leaderboard to add stat to (defaults to 'default') |
* required
/custom_stats define_boolean Define a true/false stat (MVP, clutch, etc.) with count tracking
| Option | Type | What it does |
|---|---|---|
| name * | text | Unique name for the stat (e.g., mvp, clutch) |
| scope * | text | Whether this stat is per-player or per-match Choices: player, match |
| label | text | Display label shown in forms (defaults to name) |
| points_if_true | number | Stat Points awarded when the value is True (e.g., 5 for MVP) |
| points_if_false | number | Stat Points awarded when the value is False |
| leaderboard | text | Leaderboard to add stat to (defaults to 'default') |
* required
/custom_stats select_choices Add dropdown choices to a text or number stat
| Option | Type | What it does |
|---|---|---|
| name * | text | Name of the stat to add choices to |
| leaderboard | text | Leaderboard containing the stat (defaults to 'default') |
| scope | text | Scope for auto-creating stat (player or match, defaults to player) Choices: player, match |
| choice_1 | text | Choice option 1 |
| choice_2 | text | Choice option 2 |
| choice_3 | text | Choice option 3 |
| choice_4 | text | Choice option 4 |
| choice_5 | text | Choice option 5 |
| choice_6 | text | Choice option 6 |
| choice_7 | text | Choice option 7 |
| choice_8 | text | Choice option 8 |
| choice_9 | text | Choice option 9 |
| choice_10 | text | Choice option 10 |
| choice_11 | text | Choice option 11 |
| choice_12 | text | Choice option 12 |
| choice_13 | text | Choice option 13 |
| choice_14 | text | Choice option 14 |
| choice_15 | text | Choice option 15 |
| choice_16 | text | Choice option 16 |
| choice_17 | text | Choice option 17 |
| choice_18 | text | Choice option 18 |
| choice_19 | text | Choice option 19 |
| choice_20 | text | Choice option 20 |
| choice_21 | text | Choice option 21 |
| choice_22 | text | Choice option 22 |
* required
/custom_stats list List all custom stats defined for a leaderboard
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | Leaderboard to list stats for (defaults to 'default') |
* required
/custom_stats remove Remove a custom stat definition
| Option | Type | What it does |
|---|---|---|
| name * | text | Name of the stat to remove |
| leaderboard | text | Leaderboard to remove stat from (defaults to 'default') |
* required
/custom_stats label Update the display label for a custom stat
| Option | Type | What it does |
|---|---|---|
| name * | text | Name of the stat to update |
| label * | text | New display label for the stat |
| leaderboard | text | Leaderboard containing the stat (defaults to 'default') |
* required
Export, import, and permanent deletion. Take a backup before anything in the danger zone.
Manage leaderboard data import and export operations
/backup export Export leaderboard data as JSON file
| Option | Type | What it does |
|---|---|---|
| leaderboard | text | The leaderboard to export (defaults to "default") |
* required
/backup import Import leaderboard data from a JSON file
| Option | Type | What it does |
|---|---|---|
| data_file * | attachment | The JSON file containing the leaderboard data |
| leaderboard | text | The leaderboard to import to (defaults to "default") |
* required
DANGER: Permanently delete leaderboards and server data - Admin only
Every action here is permanent and cannot be undone. Run /backup export first.
/danger_zone delete_leaderboard PERMANENTLY delete a specific leaderboard - cannot be undone
| Option | Type | What it does |
|---|---|---|
| leaderboard * | text | Name of the leaderboard to delete |
| confirmation * | text | Confirm permanent deletion of this leaderboard Choices: no, confirm |
* required
/danger_zone delete_user Delete selected data for a user from the system
| Option | Type | What it does |
|---|---|---|
| user_id * | text | Discord user ID to delete (works even if user has left the server) |
| delete_ratings * | true/false | Delete user's ratings (removes from leaderboards) |
| delete_player_matches * | true/false | Delete user's individual match records |
| delete_head_to_head * | true/false | Delete user's head-to-head statistics |
| delete_metadata * | true/false | Delete user's profile data (WARNING: Historical matches will lose player names) |
| confirmation * | text | Confirm deletion of user data Choices: no, confirm |
* required
/danger_zone wipe_server PERMANENTLY delete ALL leaderboards and data - cannot be undone
| Option | Type | What it does |
|---|---|---|
| confirmation * | text | Confirm permanent deletion of ALL server data Choices: no, confirm |
| verify_id * | text | Type your server ID to confirm deletion |
* required
API keys and webhooks for wiring Team Up into your own systems.
/api_key generate Generate a new API key for this server
/api_key view View all API keys for this server
/api_key delete Delete a specific API key
| Option | Type | What it does |
|---|---|---|
| key * | text | The API key to delete |
* required
/api_key delete_all Delete all API keys
Manage webhooks for receiving real-time event notifications
/webhook register Register a webhook URL for an event type
| Option | Type | What it does |
|---|---|---|
| event_type * | text | The type of event to receive notifications for Choices: leaderboard_ratings |
| url * | text | The webhook URL to send events to (HTTPS recommended) |
* required
/webhook delete Delete a registered webhook
| Option | Type | What it does |
|---|---|---|
| event_type * | text | The event type to delete the webhook for Choices: leaderboard_ratings |
* required
/webhook list List all registered webhooks for this server
/webhook test Send a test payload to a registered webhook
| Option | Type | What it does |
|---|---|---|
| event_type * | text | The event type to test Choices: leaderboard_ratings |
* required
Subscription status and vote-reward loot crates.
Vote-rewards loot crates — check your points and open crates for cosmetics
/crate status Check your points, crates, vote streak, and collection
/crate open Open your crates for a chance at cosmetics (or points back)
| Option | Type | What it does |
|---|---|---|
| count | integer | How many crates to open (default 1) Choices: 1, 5, 10 |
* required
/crate buy Spend vote points to buy crates
| Option | Type | What it does |
|---|---|---|
| count * | integer min 1 | How many crates to buy (10 points each) |
* required
/crate gift Gift crates to another member
| Option | Type | What it does |
|---|---|---|
| user * | user | Who to send crates to |
| count * | integer min 1 | How many crates to gift |
* required
/crate leaderboard See the top voters
| Option | Type | What it does |
|---|---|---|
| scope | text | Which ranking to show (default: this month) Choices: monthly, alltime, streak |
* required
Manage subscription plans and status for this server
/subscription activate Activate a purchased subscription
/subscription buy View available subscription plans to purchase
/subscription status View the server's current subscription status and features
33 of the 42 commands are restricted to server administrators until you say otherwise. Discord controls that under Server Settings → Integrations → Team Up, where you can grant individual commands to roles or members.