A Discord announcement bot does the tedious parts of announcing for you. It posts to the right channel, pings the right roles (and only them) and formats the news as a clean embed. It hits Publish in announcement channels automatically, and can post at a scheduled time or when another app sends it data. In NoriaFlow you build all of this as one visual workflow on your own bot, no code, free during the beta.
What an announcement bot does
- Auto-publish (crosspost) messages in announcement channels so followers in other servers get them
- Ping roles like
@Announcementsor@Eventswithout waking up the whole server - Post embeds (title, image, color, fields) instead of walls of text
- Schedule announcements for an exact time, once or recurring
- Relay announcements from other apps via webhooks: release notes, blog posts, status updates
Let's build each piece.
Auto-publish in announcement channels (crosspost)
Discord's announcement channels can be followed by other servers, but a message only reaches followers once it's published. Manually, that's a "Publish" click on every single message. A bot removes the click:
- Send Message (or Send Embed). Posts the announcement in your announcement channel. The action outputs the new message's ID.
- Crosspost (publish): the same Discord action node, operation switched to Crosspost (publish). Set the channel, and set Message ID to
{{message_id}}from the previous step.
Every announcement the workflow sends is now published automatically the moment it's posted. Two honest caveats: crossposting only works in channels of the Announcement type (convert yours in the channel settings), and Discord rate-limits how many messages a channel can publish per hour. Fine for real announcements, not for a chatty feed.
Ping the right roles, without pinging everyone
The fastest way to make members mute your server is over-pinging. Do it surgically instead:
- Mention a role in the message text with
<@&ROLE_ID>, for example a self-assigned@Announcementsrole members opt into with reaction roles. - Set the action's Mentions & pings field to Ping users & roles so the role actually gets notified. There is also a silent option: No pings shows the mention without notifying anyone. Perfect for log channels.
- Reserve Ping everything (incl. @everyone) for genuinely rare, server-wide news.
Opt-in ping roles plus crossposting is the pattern big communities use: local members choose their notifications, follower servers get the news automatically.
Announcement embeds
Plain text announcements get skimmed; embeds get read. Switch the action to Send Embed and use the full builder: title, description, color, image, thumbnail, fields, footer, and timestamp. Copy a layout from these Discord embed examples.
Two features worth knowing:
- Embed ID: give the embed a permanent ID and every run edits the same message instead of posting a new one. Ideal for a "current status" or "latest version" announcement that should always be up to date.
- Discord timestamps: the Date node outputs
<t:UNIX:R>tags, so "maintenance starts in 3 hours" counts down live in every member's own timezone.
Scheduled announcements
Write the announcement when you have time; let the bot post it at the right time. Swap the trigger for a Schedule trigger, set the cron expression and your timezone, and tick Run once only for a one-off, or leave it recurring for a weekly update post. The full playbook, with six copy-paste setups, is in the Discord scheduled message guide; cron basics live in scheduled automation.
Streaming? The same idea powers go-live announcements: a Twitch live alert or YouTube go-live post is just an announcement workflow with a platform trigger.
Announcements from other apps (webhooks)
Anything that can send an HTTP request can feed your announcement bot. A Webhook trigger gives your workflow a URL; when your blog, CI, store, or status page POSTs to it, the payload arrives as variables like {{body.title}}, which you drop straight into an embed:
Start from the Webhook to Discord Embed template, then add the crosspost step from above so relayed announcements publish themselves too. The webhook automation guide covers securing the URL with a secret token.
Set it up in 5 steps
- Connect your Discord bot: announcements post under your bot's name and avatar.
- Pick a trigger: Schedule (timed), Webhook (from another app), or a slash command you type when news drops.
- Add Send Embed with your announcement layout and the role mention.
- Add Crosspost (publish) with Message ID
{{message_id}}if the channel is an announcement channel. - Test in the editor, then Activate.
Start announcing
One workflow replaces the whole routine: format, ping, publish, on time, every time. Start building free: it runs on your own bot and everything is free during the beta.
Related guides: Discord scheduled messages · Discord embed examples.
Setup checks and next steps
- Check the selected bot, server and destination channel. Role actions also require the bot role to sit above the role it changes.
- Test with a dedicated channel or member before enabling this automation for everyone.
- If a step fails, inspect its error and inputs rather than reconnecting every account.
See the extension setup guide for adding and reusing services, the node reference for parameters, and testing and debugging for execution diagnostics.