Connect a channel
Open Settings → Connections and choose Connect on Discord. You are sent to Discord to pick a server and a channel; Discord makes a webhook for that channel and hands it to Tailflow, which keeps it sealed. The list shows the webhook's name.
Where signing in is not available, the dialog asks for a webhook URL instead: in the channel's settings open Integrations → Webhooks, create one and copy its URL. One webhook posts to one channel; connect again for a second channel.
Write the message
The Message uses Discord's Markdown: **bold**, *italic*, __underline__, ~~strikethrough~~, `code`, fenced blocks, > quotes, # headings and [label](url) links. Wrap a bare link in angle brackets to post it without a preview card.
The counter shows the length against Discord's 2,000-character limit; past it the test run shows the action as failing with the count. Mentions are always switched off, so text from an event cannot page the server.
**{{ event.token_symbol }} transfer**
{{ event.value_decimal }} tokens
<{{ event.explorer_tx_url }}>Check the result
Test run shows the rendered message without posting. A real run records Discord's answer on the action. If the webhook was deleted in Discord, the connection is disconnected and the flows using it stop with that reason until a new webhook is connected.
Discord limits how fast one webhook can post; sends are spaced to stay within that, and a burst is delivered with short pauses rather than dropped.