IS_COMPONENTS_V2 flag (1<<15). Note that using this flag disables traditional content and embeds—all content must be sent as components instead.
Legacy message component behavior will not be deprecated and will continue to be available to your apps on a message-by-message basis. However, we recommend using the new components for new projects and features.
Using Message Components
A guide on sending message components with examples.
Component Reference
Explore the complete components reference documentation.
Interactions Overview
Learn how components integrate with the interactions system.
Component Categories
Components are organized into three categories based on their purpose:Layout Components
Layout components organize and structure the visual presentation of your message:- Action Row (type
1) — A top-level container for a row of interactive components. Can hold up to 5 buttons or a single select menu. - Section (type
9) — Associates text content with an accessory component (like a button or thumbnail) side by side. - Separator (type
14) — Adds vertical padding and a visual divider between other components. - Container (type
17) — Visually groups a set of components with an optional accent color bar. - Label (type
18) — Wraps modal components with a label and optional description. Used in modals instead of Action Row.
Content Components
Content components display static text, images, and files:- Text Display (type
10) — Renders markdown-formatted text. Behaves similarly to the messagecontentfield but allows multiple instances. - Thumbnail (type
11) — A small image used as an accessory in a Section. Supports GIF and WEBP. - Media Gallery (type
12) — Displays 1–10 images or media items in an organized gallery. - File (type
13) — Displays an uploaded file attachment.
Interactive Components
Interactive components respond to user input and generate interaction events:- Button (type
2) — A clickable element with customizable style, label, and emoji. Must be inside an Action Row or Section accessory. - String Select (type
3) — A dropdown with developer-defined options. Available in messages and modals. - Text Input (type
4) — A single- or multi-line text field. Only available in modals. - User Select (type
5) — A dropdown auto-populated with server members. - Role Select (type
6) — A dropdown auto-populated with server roles. - Mentionable Select (type
7) — A dropdown auto-populated with users and roles. - Channel Select (type
8) — A dropdown auto-populated with server channels. Can be filtered by channel type. - File Upload (type
19) — Allows users to upload files in modals. Only available in modals. - Radio Group (type
21) — A single-choice set of options. Only available in modals. - Checkbox Group (type
22) — A multi-selectable group of checkboxes. Only available in modals. - Checkbox (type
23) — A single yes/no checkbox. Only available in modals.
Using the IS_COMPONENTS_V2 Flag
When you send a message with theIS_COMPONENTS_V2 flag (1 << 15, value 32768), the following changes apply:
- The
contentandembedsfields no longer work. Use Text Display and Container instead. - Attachments won’t show by default—they must be exposed through File components.
- The
pollandstickersfields are disabled. - Messages allow up to 40 total components.