Auto-translate Slack announcements into regional channels

When you post in your main announcements channel, we instantly translate it and share it in each regional Slack channel, so your whole team stays aligned.

Agentic Task
DeepLSlack BotOperationsNotifications & AlertsContent Generation
PromptCreate

Whenever a new message is posted in our designated #announcements Slack channel, run automatically. Use a Slack message webhook event on that channel as the trigger, and treat each new top-level message as an announcement to translate and broadcast to our regional channels.

Take the announcement text and translate it into each of our team's languages using DeepL's Translate Text operation. Omit source_lang so DeepL auto-detects the original language of the message. Each target language maps to a regional Slack channel, for example German to #announcements-de, French to #announcements-fr, and Spanish to #announcements-es. target_lang accepts regional variants like EN-GB, PT-BR, and ZH-HANS when we need them, so use the variant that matches the channel.

Skip any target language whose code matches the language DeepL detected for the original message, so we never post a translation that just echoes the original in the same language. If a message is already in one of our team languages, that channel simply does not receive a duplicate.

Preserve Slack formatting and links in every translation. Keep mrkdwn like *bold*, _italic_, and <url|text> links intact so each localized post reads just like the original, and clean up the formatting per language so it looks native rather than machine-dumped. Post each translation into its matching regional channel using Slack Bot's Send a Message operation. The bot must be a member of both the source announcements channel and each regional channel it posts to.

Prefix every localized post with a short note, written in that target language, saying it is an automated translation of the original announcement (for example, an English source would read "Automated translation of the original announcement posted in #announcements."). If DeepL returns nothing usable for a language, skip that channel rather than posting an empty message.

Setup nuance: DeepL free-plan API keys end in ':fx' and call api-free.deepl.com, while paid keys call api.deepl.com; the right host is chosen automatically from the key. Keep the channel-to-language mapping easy to edit so we can add or remove languages and regional channels over time.

What does this prompt do?

  • Watches your main announcements channel and springs into action the moment a new message is posted.
  • Translates each announcement into every language your team speaks, keeping bold text, links, and formatting intact.
  • Posts each translation into its matching regional channel, like #announcements-de, #announcements-fr, and #announcements-es.
  • Skips the language the message was already written in and labels every post as an automated translation.

What do I need to use this?

  • A Slack workspace with a bot added to your announcements channel and to each regional channel.
  • A DeepL account for the translations (the free plan works too).
  • The list of languages your team speaks and which regional channel each one maps to.

How can I customize it?

  • Choose which channel is the source and which regional channels receive each language.
  • Add or remove languages, including regional variants like British English or Brazilian Portuguese.
  • Reword the short automated-translation note that appears at the top of every localized post.

FAQs

Will it re-post the message in the language it was already written in?
No. It detects the original language and skips that one, so nobody sees a pointless copy of the original.
Does it keep Slack formatting and links?
Yes. Bold text, italics, and links are preserved so each translated post reads just like the original announcement.
Which languages can it translate into?
DeepL supports dozens of languages, including regional variants like British English, US English, and Brazilian Portuguese. You pick the ones your team needs.
Do I need a paid DeepL plan?
No. It works with both the free and paid DeepL plans. The free plan covers a generous number of characters each month.
How quickly do the translations appear?
Almost immediately. Each time someone posts in the announcements channel, the translated versions land in the regional channels within moments.

Related templates

Build a credential rotation checklist when someone leaves

When someone leaves, we check which shared passwords they used in their final months and post a ranked rotation list to your security channel.

1Password
Rippling
Slack Bot
+1
Agentic Task
Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Draft polite follow-ups for emails that never got a reply

Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.

Aurinko
Google Sheets
Slack Bot
Agentic Task
Replay failed SQS messages when a bug fix is merged

When you merge a fix in GitHub, this agent checks the matching dead-letter queue, replays the failed messages, and reports back on the pull request and in Slack.

Amazon SQS
GitHub
Slack Bot
Agentic Task

Keep every team, in every language, on the same page.

Post your announcement once and let each regional channel receive it in the right language automatically.