Ruination Bots

Discord Embed Builder

Build a message with text, images, link buttons and a coloured accent bar. The preview shows it the way Discord will, and you can send it through a webhook. The builder is free and needs no account.

Send to Discord

Send it from your own bot instead

With Ruination Bots your message comes from a bot with your server's name and avatar, not from a webhook. The same builder writes its welcome messages, ticket panels, giveaways and custom commands. Your bot can edit a message after it is posted, schedule announcements and add buttons that open tickets or give roles.

You get the whole product for 14 days without a card, once per account and once per Discord server. Afterwards the bot stops, nothing is charged and your setup is kept.

How to send an embed with a webhook

  1. Create a webhookIn Discord, open Server Settings, then Integrations, then Webhooks. Choose New Webhook and pick the channel it posts in. You need the Manage Webhooks permission.
  2. Copy the webhook URLOpen the webhook and choose Copy Webhook URL. It starts with https://discord.com/api/webhooks/.
  3. Build the messageAdd text, a container with an accent colour, images or link buttons. Start from a template if you prefer. The preview updates while you type.
  4. Send itPaste the webhook URL, set a name and an avatar if you want them, and send. The message appears in the channel straight away.
Anybody who has the webhook URL can post in that channel. Your URL goes from your browser straight to Discord and is never sent to us. If a URL leaks, delete the webhook in Discord and create a new one.

Embeds and Components V2

Discord's newer message format, Components V2, does what classic embeds did and more. A container with an accent colour looks like an embed. Inside it you can stack text, sections with a thumbnail beside them, galleries, separators and buttons in any order.

PartWhat it doesLimit
Text displayMarkdown text: headings, lists, links, mentions, timestamps4,000 characters across the message
ContainerThe embed look: a box with an optional accent colourCounts toward the 40 components
SectionUp to three text blocks with a thumbnail or a button beside them3 text blocks
Media galleryA grid of images10 images
Link buttonOpens a website5 buttons in a row
SeparatorSpace or a line between partsNone of its own

A message can hold 40 components in total, nested ones included. The builder counts them for you and flags anything Discord would refuse before you send.

What a webhook cannot do

A webhook posts a message and stops there. A button that opens a ticket, gives a role or enters a giveaway waits for a bot to answer the click. A webhook has no bot behind it, so the builder offers link buttons only.

  • No buttons that do something, and no select menus.
  • No replies to commands or to members.
  • No scheduled posts. A webhook sends when you press send.

A bot can do all three. If you would rather not write one, Ruination Bots runs one for you under your own name. See the ticket bot guide for an example of buttons that do something.

Using the JSON in your own bot

The JSON view shows the components array this page sends. Add flags: 32768 to the message, which tells Discord it is a Components V2 message, and post it with discord.js, discord.py or a plain HTTP request. Use Import to load JSON you already have.

Questions

Is the embed builder free?

Yes. It needs no account, and nothing you build is sent to us.

Where do I find my webhook URL?

In Server Settings, Integrations, Webhooks. Open a webhook and choose Copy Webhook URL.

Why can I only add link buttons?

Every other button and every select menu waits for a bot to answer the click. A webhook message has no bot behind it, so members would see "This interaction failed".

Can I change the name and avatar of the message?

Yes. Set a name and an image URL before you send. They apply to that one message.

Is my message saved?

Your draft is kept in this browser, so it is still here when you come back. It is not stored anywhere else. Your webhook URL is never saved.

What is the difference between an embed and Components V2?

Classic embeds have fixed fields: title, description, fields, image, footer. Components V2 lets you place text, images and buttons in any order, and a container gives you the embed look.

More free tools