Communicate in your multilingual server with ease!

Note: This module is only available to users with a Premium Subscription.

The Translation module allows you to translate texts via a Custom Command, quick-translations by reacting with a specified emoji, daily translation limits, and more!


The Translation module requires you to add your own DeepL API key in order to handle translations, allowing you to select the account tier and the daily translations limit.

DeepL API Key: The API key required to send requests to DeepL.

  1. Create an account or log in the official DeepL website.

  2. Select the tier you wish to use for your translations, whether it is the Free Tier or Paid Tiers. If you wish to have the free tier, please select 'Sign up for free'.

  1. Fulfil the following details. This is used to avoid potential misuses of their free API. DeepL will not charge you unless you manually upgrade your current subscription to a paid one.

  1. Once you have successfully fulfilled all the details, accept DeepL's Terms & Conditions and press 'Sign up for free'.

  2. A similar page will appear upon signing up for free, click on 'Account management' to go to your account settings. If this page does not appear, please go to your account settings.

  1. Get the Authentication Key for DeepL in your account summary settings located in the bottom right corner.

  1. Once copied, paste it in the 'DeepL API Key' field in BotGhost.

DeepL Account Tier: Set the account tier you selected when getting your API key. Remember to select the correct one as DeepL handles different API domains for free and paid tiers.

Daily Translation Limit: Define the maximum amount of translations that can be executed per day. Setting this to 0 will disable this limit.


The following parameters allow you to react with a specific emoji to automatically translate the content of the message, select the channels for quick translations, the required roles, the target language, and toggle if you wish to delete the original message upon successful translation.

Trigger Reactions: Select up to 10 different emojis to trigger the quick-translations.

Quick-Translation Channels: Choose the channels you wish to allow for quick-translation. If none is chosen, this feature will be available across all channels.

Required Roles: Set the required roles users must have to trigger the quick-translations. If none is set, this feature will be available for everyone.

Target Language: Define which language should the messages be translated to when triggering the quick-translations.

Delete Original Message: Enable or disable to delete the original message after a successful quick-translation.

Translate Command

Define the allowed roles and the default DeepL language when using the /translate custom command.

Allowed Roles: Select the roles that users must have to run the /translation custom command.

Default Language (DeepL): Choose the language to translate messages to when using the custom command.

Translation Command Reply

Customize the reply in the /translate custom command. You can use {original_message} and {translated_message} to return the content of the original message and the translated content, respectively. All variables can be used.

Character Limit: Define the maximum amount of characters the command should allow to translate.


Find the command for the Translation module and modify them. This will allow you to fine-tune the command's logic to your liking.

/translate: Translate the given text to the target language.


Explore the events within the Translation module and customize them to your preferences. This allows you to change the events' logic according to your liking and needs.

Quick-Translation: This event handles the quick-translations, triggered with each reaction added to a message.

Daily Limit Handler: The timed event triggered daily to handle the daily limits.

Last updated