Overview
Variables get swapped for real values when confine sends your message. They work anywhere a command accepts a message or embed script — welcome messages, auto responders, timers, and more.A variable that has no value in context resolves to
N/A rather than breaking the message.- User
- Server
- Channels
- Date & Time
- Boost
- Last.FM
| Variable | Resolves to |
|---|---|
{user} | Username and discriminator |
{user.id} | Their user ID |
{user.mention} | A mention |
{user.name} | Their username |
{user.display_name} | Their nickname, or username if none |
{user.tag} | Their discriminator |
{user.avatar} | Avatar URL |
{user.display_avatar} | Avatar URL, same as above |
{user.guild_avatar} | Server-specific avatar, if set |
{user.created_at} | Account creation date in UTC |
{user.created_at_timestamp} | Account creation as a UNIX timestamp |
{user.joined_at} | Server join date in UTC |
{user.joined_at_timestamp} | Server join date as a UNIX timestamp |
{user.join_position} | Their position in join order |
{user.join_position_suffix} | Join position with ordinal suffix (42nd) |
{user.top_role} | Highest role name |
{user.role_list} | All roles as mentions |
{user.role_text_list} | All roles as plain names |
{user.color} | Display color hex code |
{user.boost} | Yes or No |
{user.boost_since} | Boost start date in UTC |
{user.boost_since_timestamp} | Boost start as a UNIX timestamp |
{user.bot} | Yes or No |
| Variable | Resolves to |
|---|---|
{guild.name} | Server name |
{guild.id} | Server ID |
{guild.count} | Member count |
{guild.owner_id} | Owner’s user ID |
{guild.icon} | Icon URL |
{guild.banner} | Banner URL |
{guild.splash} | Invite splash URL |
{guild.discovery} | Discovery splash URL |
{guild.vanity} | Vanity invite |
{guild.created_at} | Creation date in UTC |
{guild.created_at_timestamp} | Creation date as a UNIX timestamp |
{guild.boost_count} | Number of boosts |
{guild.boost_tier} | Boost level, or No Level |
{guild.emoji_count} | Number of emojis |
{guild.role_count} | Number of roles |
{guild.preferred_locale} | Server language |
{guild.key_features} | Enabled Discord features |
{guild.region} | Voice region |
{guild.shard} | Shard ID |
{guild.afk_channel} | AFK channel mention |
{guild.afk_timeout} | AFK timeout in seconds |
{guild.max_members} | Member cap |
{guild.max_presences} | Presence cap |
{guild.max_video_channel_users} | Video call cap |
| Variable | Resolves to |
|---|---|
{channel.name} | Channel name |
{channel.id} | Channel ID |
{channel.mention} | Channel mention |
{channel.topic} | Channel topic |
{channel.type} | text, voice, forum, and so on |
{channel.position} | Position in the channel list |
{channel.category_id} | Parent category ID |
{channel.category_name} | Parent category name |
{channel.slowmode_delay} | Slowmode in seconds |
Server-wide channel lists
| Variable | Resolves to |
|---|---|
{guild.channels} | Every channel, as mentions |
{guild.channels_count} | Total channel count |
{guild.text_channels} | Text channels and threads |
{guild.text_channels_count} | Text channel count |
{guild.voice_channels} | Voice and stage channels |
{guild.voice_channels_count} | Voice channel count |
{guild.category_channels} | Categories |
{guild.category_channels_count} | Category count |
Local variables use Pacific time.
| Variable | Resolves to |
|---|---|
{date.now} | 08/06/2026 |
{date.now_proper} | Thursday, August 6, 2026 |
{date.now_short} | Aug 6, 2026 |
{date.now_shorter} | 8/6/26 |
{time.now} | 12-hour clock |
{time.now_military} | 24-hour clock |
{date.utc_timestamp} | Current UNIX timestamp |
UTC equivalents
| Variable | Resolves to |
|---|---|
{date.utc_now} | 2026-08-06 |
{date.utc_now_proper} | Full weekday and date |
{date.utc_now_short} | Abbreviated month |
{date.utc_now_shorter} | Numeric short form |
{time.utc_now} | 12-hour clock |
{time.utc_now_military} | 24-hour clock |
Only available in
,boosts messages.| Variable | Resolves to |
|---|---|
{boost.count} | Current boost total |
{boost.level} | Boost level |
{boost.tier} | Same as level |
{boost.since} | Relative timestamp |
Only available in Last.fm mode. See Last.FM.
{user.*} refers to the Last.FM account and {author.*} refers to the Discord member.| Variable | Resolves to |
|---|---|
{user.name} | Last.fm username |
{user.avatar} | Last.fm profile picture |
{user.url} | Last.fm profile URL |
{user.plays} | Total scrobbles |
{proper(user.plays)} | Total scrobbles with thousands separators |
{user.artist_crown} | Whether they hold the crown for this artist |
{author} | Discord username and discriminator |
{author.name} | Discord username |
{author.nickname} | Server nickname |
{author.discriminator} | Discord discriminator |
{author.id} | Discord user ID |
{author.mention} | Discord mention |
{author.avatar} | Discord avatar |
{track.name} | Track title |
{lower(track.name)} | Track title, lowercased |
{track.url} | Track URL |
{track.spotify_url} | Spotify link |
{track.plays} | Play count for the track |
{proper(track.plays)} | Formatted play count |
{track.duration} | Track length |
{track.release_date} | Release date |
{artist.name} | Artist name |
{lower(artist.name)} | Artist name, lowercased |
{artist.url} | Artist URL |
{artist.plays} | Play count for the artist |
{proper(artist.plays)} | Formatted play count |
{artist.image} | Artist image |
{album.name} | Album title |
{lower(album.name)} | Album title, lowercased |
{album.url} | Album URL |
{album.cover} | Album artwork |
