Overview
Containers are Discord’s new Components V2 system. Think of them like embeds but way more powerful — you can have multiple text blocks, image galleries, sections with thumbnails, separators, and buttons all in one message. They look cleaner and more modern than embeds.This page is written so that even if you’ve never touched a container before, you’ll understand exactly what to do. Every property is explained with real examples you can copy and use immediately.
Free vs Premium
Free
- Create, list, delete, preview, and send containers via webhook
- Up to 3 saved containers (via
--nameon create, or the builder’s Save button) - Full interactive builder access
Celestia Premium — $9.99
- Unlimited saved container slots
container copy— extract script from any container messagecontainer convert— turn an embed into a container script
Two Ways to Build
Script Method (Prefix)
Write a container script using the syntaxCommands:
~container create, ~container copyBest for: Power users, welcome messages, templatesInteractive Builder (Slash)
Click buttons to build your container visuallyCommands:
/container builder, /container editBest for: Beginners, quick creation, no syntax neededAction Button IDs
Buttons inside a container script can trigger built-in actions instead of just linking out. Use these as thecustom_id value in a $v{button: ...} block:
Example:
Some
custom_id prefixes are reserved by the bot internally and will be silently stripped if used (e.g. anything starting with container_, embedbuilder_, music_, vm_, ct_, and a few others). If your button seems to lose its action, check you’re not using a reserved prefix.VoiceMaster (VM) Buttons
Containers can include a built-in row (or two) of VoiceMaster voice-channel controls — lock, unlock, hide, reveal, kick, decrease/increase limit, info, rename, and claim.- Script method: add
$v{vmbuttons}anywhere in your container script. - Interactive builder: an Add/Remove VM Buttons toggle appears in
/container builderand/container edit, but only for users with the Manage Guild permission.
/container send or ~container preview), the VM control rows are automatically added to the message.
Script Method Commands
container create
container create
Create and send a container using script syntax.Options:
--name <name>— Save the container so you can reuse it (counts toward your 3 free slots if you don’t have Premium)
ct, createcontainercontainer list
container list
See all containers you’ve saved.
container delete
container delete
Delete a saved container permanently.
container preview
container preview
Send a saved container to see how it looks.
container webhook
container webhook
Send a container through a webhook URL.
container copy
container copy
Copy the script from any message that contains a container.How to get a message link:
Right-click the message → Copy Message Link
container convert
container convert
Convert an embed from any message into a container script.What it does:
- Reads the embed from that message
- Converts title, description, fields, images, buttons
- Gives you a ready-to-use container script
container syntax
container syntax
Shows a quick reference of all available script properties.
Interactive Builder Commands
/container builder
/container builder
Opens the interactive container builder. No syntax needed — just click buttons.Buttons available:
- Add Text
- Add Section
- Add Separator
- Add Gallery
- Add Button
- Set Color
- Spoiler toggle
- Remove Component
- Send via Webhook
- Save
- Add/Remove VM Buttons (Manage Guild permission only)
/container edit
/container edit
Load a saved container into the interactive builder to make changes.
/container send
/container send
Send a saved container to any channel.
/container list
/container list
View your saved containers (slash version).
/container delete
/container delete
Delete a saved container (slash version).
Related Resources
Container Scripts
Full scripting syntax reference
Variables
All available placeholders