Skip to content

Announcement with images

An event announcement with a banner, details, a file with the rules and buttons. It shows how to mix content outside and inside a container.

Preview
My BotAPPToday at 12:00 PM

@Moderators new event!

🏆 Winter tournament

Show everyone who the best player on the server is. Prizes for the top 3.


📅 Date: 2026-11-30

👥 Slots: 32 players

🎁 Prize: Nitro + exclusive role


Tournament rules

tournament-rules.pdf
24.5 KB
payload.json
{
"flags": 32768,
"allowed_mentions": {
"parse": [
"roles"
]
},
"components": [
{
"type": 10,
"content": "<@&123456789012345678> new event!"
},
{
"type": 17,
"accent_color": 15418782,
"components": [
{
"type": 12,
"items": [
{
"media": {
"url": "attachment://banner.png"
},
"description": "Tournament banner"
}
]
},
{
"type": 10,
"content": "# 🏆 Winter tournament\nShow everyone who the best player on the server is. Prizes for the top 3."
},
{
"type": 14,
"divider": true,
"spacing": 1
},
{
"type": 9,
"components": [
{
"type": 10,
"content": "📅 **Date:** <t:1796025600:F>\n👥 **Slots:** 32 players\n🎁 **Prize:** Nitro + exclusive role"
}
],
"accessory": {
"type": 2,
"style": 3,
"label": "Sign me up",
"custom_id": "tournament_signup",
"emoji": {
"name": "✋"
}
}
},
{
"type": 14,
"divider": true,
"spacing": 1
},
{
"type": 10,
"content": "**Tournament rules**"
},
{
"type": 13,
"file": {
"url": "attachment://tournament-rules.pdf"
}
},
{
"type": 1,
"components": [
{
"type": 2,
"style": 5,
"label": "Rulebook",
"url": "https://example.com/rules"
},
{
"type": 2,
"style": 5,
"label": "Livestream",
"url": "https://example.com/live"
}
]
}
]
}
]
}
  • The role mention goes outside the container, in a Text Display, so it reads like an alert.
  • allowed_mentions with "parse": ["roles"] lets the role mention notify.
  • The banner is a Media Gallery with a single item: it’s shown large, full width.
  • The PDF is shown with a File component pointing to attachment://tournament-rules.pdf.
  • Link buttons (style 5) don’t send an interaction: they open the URL directly.

This message uses 14 components (out of the 40 allowed):

Component Count
Text Display 4
Container 1
Media Gallery 1
Separator 2
Section 1
Button 3
File 1
Action Row 1