Functions
Who and where
$usernameName of the person who used the command. In events, the person who joined, left, was banned or reacted. Empty in scheduled commands.$userIDID of the person who used the command: a long number that never changes. Use it wherever another function asks for a user. Empty in scheduled commands.$mentionMentions the person who used the command, so they get notified. Empty in scheduled commands.$serverNameName of this server.$memberCountHow many members this server has.$channelName[channel?]Name of the channel the answer goes to, or of another channel. Join and leave events answer in the server's system channel.$message[word number?]Everything typed after the command, or just one word of it.$messageFrom[word number]Everything typed after the command, starting at this word. Handy for a reason after a mention.$messageWordCountHow many words were typed after the command.
Answer
$replySends the answer as a reply to the command message, so everyone sees what it answers.$react[emoji]Adds a reaction to the bot's answer.$deleteCommandDeletes the message that started the command, so only the answer stays.$answerAs[name;avatar url?]Sends the answer under another name and picture. The bot needs the Manage Webhooks permission. Names that look like staff or the server owner are refused.
Embed
$title[text]Puts the answer in a box, called an embed, with this title on top.$titleLink[link]Makes the embed title clickable.$description[text]The main text inside the embed.$field[name;value;side by side?]Adds a small block with a bold name and a value to the embed.$footer[text;icon?]Small text at the bottom of the embed, with an optional little picture.$color[hex]The color of the stripe on the left of the embed.$author[name;icon?;link?]Small name above the title, with an optional picture and link.$image[link]A big picture at the bottom of the embed.$thumbnail[link]A small picture in the top right corner of the embed.$timestamp[time?]Shows a date and time next to the footer, in each reader's own time zone.$addEmbedStarts a new embed in the same answer, up to 10. Functions after it fill the new one.
Messages
$sendMessage[channel;text;get ID?]Sends an extra message to a channel of this server, next to the normal answer.$sendDM[user;text]Sends a private message to a member of this server.$editMessage[message ID;text;channel?]Changes the text of a message the bot sent before.$deleteMessage[message ID;channel?]Deletes a message on this server.$pinMessage[message ID;channel?]Pins a message, so it is easy to find in the channel's pinned list.$unpinMessage[message ID;channel?]Removes a message from the pinned list.$clearMessages[amount;user?]Deletes the newest messages in this channel, up to 100, or only those of one user.$showTypingShows that the bot is typing in this channel for a few seconds.$silentSends the answer without notifying the people it mentions.$answerIn[channel]Sends the answer to another channel of this server instead of this one.$messageIDID of the message that started this: the command, or the message that was reacted to, edited or deleted. Empty when a member joins or leaves.$messageText[message ID;channel?]The text of a message on this server.$messageAuthor[message ID;channel?]ID of the person who wrote a message.
Members
$mentioned[number?]ID of the first person mentioned in the message, or of the second, third and so on. Empty if nobody was mentioned.$mentionedRole[number?]ID of the first role mentioned in the message. Empty if no role was mentioned.$mentionedChannel[number?]ID of the first channel mentioned in the message. Empty if no channel was mentioned.$displayName[user?]The name people see for a user on this server: their nickname, or else their display name.$userTag[user?]A user's account name with its number, which never changes when they pick a new nickname.$nickname[user?]A user's nickname on this server. Empty if they have none.$avatar[user?]A link to a user's profile picture. Put it in $thumbnail or $image to show it.$joinDate[user?;format?]The day a user joined this server, like 2 Mar 2026.$accountCreated[user?;format?]The day a user made their account, like 9 May 2024.$isBot[user?]true if the user is a bot, otherwise false.$isTimedOut[user?]true if the user is timed out on this server and cannot talk, otherwise false.$userRoles[user?]The names of a user's roles, highest first, with commas between them.$hasRole[user;role]true if the user has the role, otherwise false.
Moderation
$giveRole[user;role]Gives a role to a member. The bot's own role must be higher than the role it gives.$takeRole[user;role]Takes a role away from a member.$kick[user;reason?]Removes a member from the server. They can join again with an invite.$ban[user;reason?;delete messages?;time?]Bans someone from the server, so they cannot join again. Can also delete their recent messages and end the ban after a while.$unban[user;reason?]Lets a banned person join again.$timeout[user;time;reason?]Stops a member from writing and talking for a while, up to 365 days.$removeTimeout[user;reason?]Ends a timeout early, so the member can write again.$setNickname[user;nickname]Changes a member's nickname on this server. An empty nickname removes it.
Variables
$getVar[name;id?]Reads a saved value, like someone's coins.$setVar[name;value;id?]Saves a new value in a variable. It stays saved after the command ends.$addVar[name;amount;id?]Adds a number to a saved number. Use a minus amount to take some away.$resetVar[name;id?]Deletes a saved value, so the variable is back to its starting value.$leaderboard[name;count?;format?]The people on this server with the highest values, one per line. Needs a variable saved per user.$rank[name;user?]The place of a user on the leaderboard of a variable. 0 if their value is not a number.
Rules
$onlyIf[condition;message]Stops the command and sends the message when the condition is false.$needPermission[permission;message]Stops the command and sends the message when the user does not have this permission.$hasPermission[permission]true if the user has this permission on the server, otherwise false.$cooldown[time;message]Lets each user use the command only once in this time. %time% in the message shows how long they still have to wait.
Logic
$if[condition]Runs the lines below only when the condition is true. End the block with $endif.$elseif[condition]Inside an $if block: another condition, checked only when the ones above were false.$elseInside an $if block: runs the lines below when no condition above was true.$endifEnds an $if block. Every $if needs one.$stopEnds the command right here. Nothing below it runs.$tryStarts a safe block. If something in it fails, the command goes on at $catch instead of stopping with an error.$catchInside a $try block: runs the lines below only if something above failed.$endtryEnds a $try block. Every $try needs one.$errorInside $catch: what went wrong in the $try block.$comment[text]A note for yourself. It never runs and nobody sees it.$and[condition;condition...]true if all conditions are true, otherwise false.$or[condition;condition...]true if at least one condition is true, otherwise false.$not[condition]Turns true into false and false into true.$sameText[text;text]true if both texts are the same, ignoring capital letters and spaces around them.
Text
$uppercase[text]The text in CAPITAL letters.$lowercase[text]The text in small letters. Good for comparing what people type.$capitalizeWords[text]The text with a capital letter at the start of every word.$characterCount[text]How many characters the text has, spaces included.$wordCount[text]How many words the text has.$trimSpaces[text]The text without spaces and empty lines at the start and end.$reverse[text]The text backwards.$contains[text;search]true if the search appears anywhere in the text, otherwise false. Capital letters do not matter.$startsWith[text;start]true if the text starts with this, otherwise false. Capital letters do not matter.$endsWith[text;end]true if the text ends with this, otherwise false. Capital letters do not matter.$replace[text;search;replacement]Swaps every place where the search appears for the replacement.$textPart[text;from;length?]A part of the text, starting at a character position. Negative positions count from the end.$pieceOf[text;separator;position]Cuts the text at every separator and gives back one piece. Negative positions count from the end.$join[between;text...]Puts the texts together, with the first value between each of them.$repeat[text;times]The text repeated this many times.$fillLeft[text;length;fill?]Adds characters in front of the text until it is this long. Good for lining things up.$fillRight[text;length;fill?]Adds characters after the text until it is this long.$linkSafe[text]Changes spaces and special characters so the text works inside a link.
Numbers
$random[from;to]A random whole number from the first to the second number.$randomDecimal[from;to]A random number with digits after the dot, like 2.71828.$randomChoice[value...]Picks one of the values at random.$add[number;amount]Adds two numbers together.$subtract[number;amount]Takes the amount away from the number.$multiply[number;times]Multiplies two numbers.$divide[number;by]Divides the first number by the second.$remainder[number;by]What is left over after dividing. Handy to check for even numbers: the remainder by 2 is 0.$power[number;power]The number multiplied by itself this many times.$withoutMinus[number]The number without its minus sign, so it is never below 0.$round[number;decimals?]Rounds to the nearest whole number, or keeps this many digits after the dot.$roundDown[number;decimals?]Rounds down, so 2.9 becomes 2.$roundUp[number;decimals?]Rounds up, so 2.1 becomes 3.$smallest[number;number...]The smallest of the numbers.$largest[number;number...]The largest of the numbers.$isNumber[text]true if the text is a number, otherwise false. Use it to check what someone typed.$formatNumber[number;decimals?]Writes a big number with commas, so it is easier to read.
Lists
$listLength[list;separator?]How many items a list has. A list is text with commas between the items, like red, green, blue.$listItem[list;position;separator?]The item at this place in the list. Negative positions count from the end.$listRandom[list;separator?]One item of the list, picked at random.$listContains[list;item;separator?]true if the list has this item, otherwise false.$listPosition[list;item;separator?]Where the item is in the list, counted from 1. 0 if it is not in the list.$listAdd[list;item;separator?]The list with the item added at the end. Save it with $setVar to keep it.$listRemove[list;item;separator?]The list without this item.$listJoin[list;between;separator?]The items of the list with something else between them, like a line break.$listSort[list;order?;separator?]The list in order: numbers from small to big, words from A to Z.$listShuffle[list;separator?]The list in a random order.$listUnique[list;separator?]The list with every item only once.
Time
$nowThe current time as Unix seconds, a number that counts the seconds since 1970. Good for doing math with times.$formatTime[format?;timezone?;time?]Writes a time the way you want. Without a time it shows now, without a time zone it uses UTC.$toSeconds[duration]How many seconds are in a time span. Use it to compare spans like 90m and 1h.$formatDuration[duration;parts?]Writes a number of seconds as days, hours, minutes and seconds.$timeAgo[time]How long ago a time was, or how far away it still is.
Server
$pingHow fast the bot reaches Fluxer, in milliseconds. Lower is better.$serverIDID of this server.$serverOwnerID of the person who owns this server.$serverIconA link to the server's picture. Empty if it has none.$serverCreated[format?]The day this server was made, like 14 Oct 2026.$roleCountHow many roles this server has, not counting @everyone.$channelCountHow many channels the bot can see on this server.$roleID[role]ID of a role. Use it where a role must stay right even if it gets renamed.$roleName[role]Name of a role.$roleColor[role]The color of a role, like #cba6f7. Empty if it has none.$rolePosition[role]Where a role is in the role list. A higher number is a more powerful role.$roleExists[role]true if the server has this role, otherwise false.$channelID[channel?]ID of this channel or of another one.$channelTopic[channel?]The topic text of a channel.$channelType[channel?]What kind of channel it is: text, voice, category, announcement, thread, forum, media or link.$categoryID[channel?]ID of the category a channel is sorted under.$channelExists[channel]true if the server has this channel and the bot can see it, otherwise false.
Events
$reactionEmojiThe emoji someone reacted with. Works in reaction events and after $waitForReaction.$oldTextIn the message edited event: the text before the edit. Empty if the message was older than the bot.$newTextIn the message edited event: the text after the edit.$deletedTextIn the message deleted event: the text of the deleted message, if Fluxer still had it.$awaitedMessageIn an awaited command: the text of the answer the bot waited for.$reactToCommand[emoji]Adds a reaction to the message that started this, like the command message or the edited message.
Waiting for answers
$waitForMessage[command;time;timeout command?;who?]Waits for the next message in this channel from the user, or from anyone. Then runs an awaited command with it.$waitForReaction[command;time;timeout command?;who?]Waits for the user, or anyone, to react to the bot's answer. Then runs an awaited command. Good for yes or no questions.
Schedules
$nextRun[command?]When a scheduled command runs next, as Unix seconds. Empty while it is paused or off.$skipNextRun[command?]Skips the next run of a scheduled command. The run after it happens as usual.$pauseSchedule[command?]Stops a scheduled command from running until $resumeSchedule or Resume on the dashboard.$resumeSchedule[command?]Lets a paused scheduled command run again, from its next planned time.
Web
$httpGet[url]Loads a web page or API and returns its text. A command can make at most 3 web requests.$httpPost[url;body;content type?]Sends text to a web address and returns the answer. A command can make at most 3 web requests.$httpHeader[name;value]Adds a header to the web requests that come after it, for example an API key.$jsonValue[json;path]Reads one value from JSON text.$jsonHas[json;path]true if the JSON text has a value at this path, otherwise false.$jsonCount[json;path?]How many items a list in the JSON text has. Without a path it counts the top level.$jsonSafe[text]Changes quotes, backslashes and line breaks so the text works inside quotes in JSON.
Files
$attachFile[url;file name?]Downloads a file from a link and sends it with the answer, up to 8 MB. Each file counts as a web request.$attachmentCountHow many files are attached to the message that started the command.$attachmentURL[number?]The link to a file attached to the message that started the command. Empty when there is no such file.$attachmentName[number?]The name of a file attached to the message that started the command. Empty when there is no such file.
Threads
$startThread[name;message ID?;channel?]Starts a public thread and returns its ID. With a message ID the thread starts on that message.$startPrivateThread[name;channel?]Starts a private thread that only added members and moderators can see, and returns its ID.$threadFromAnswer[name]Starts a thread on the bot's answer, so people can discuss it there.$addThreadMember[user;thread?]Adds a member to a thread, so they see it and get its messages.$removeThreadMember[user;thread?]Removes a member from a thread.$renameThread[name;thread?]Gives a thread a new name.$archiveThread[thread?]Closes a thread. A new message in it opens it again.$lockThread[thread?]Locks a thread, so only moderators can write in it.$reopenThread[thread?]Opens a closed or locked thread again.$createPost[forum;title;text;tags?]Creates a post in a forum channel and returns its ID. Tags are names separated by commas.