envelope-open-textHow to format a broadcast in the bot

How to format a broadcast in the bot

In graspil, when you create a broadcast, you see a plain text field. That does not mean your messages cannot look good. You can make text bold, italic, insert linksarrow-up-right, strike text, etc.

To do this, select a formatting mode (the parse_mode field) and use special characters.

There are two main modes:

  1. HTML (recommended for beginners β€” simpler and more reliable)

  2. MarkdownV2 (faster to type, but requires careful handling of punctuation)

Method 1: HTML (the simplest)

If you pick HTML in parse_mode, the text works like a constructor. You β€œwrap” the needed words with tags.

circle-info

Main rule: If you opened a tag (for example, <b>), you must close it (</b>).

HTML cheat sheet

What you want to do
What to type in the field
What the user will see

Bold text

<b>Important text</b>

Important text

Italic

<i>Italic text</i>

Italic text

Strikethrough

<s>Old price</s>

Old price

Link on a word

<a href="https://graspil.com">Click here</a>

Spoiler (hidden text)

<tg-spoiler>Secret</tg-spoiler>

(Hidden noise)

Example of a ready-to-paste message:

Full list of available HTML tags

What you want to do
What to type in the field

Underline

<u>Underlined</u>

Spoiler

<span class="tg-spoiler">spoiler</span> or

<tg-spoiler>spoiler</tg-spoiler>

Custom emoji

<tg-emoji emoji-id="5368324170671202286">πŸ‘</tg-emoji>

Code

<code>Code</code>

Preformatted text

<pre>Formatting</pre>

Quote

<blockquote>Quote</blockquote>

Collapsible quote

<blockquote expandable>Collapsible quote</blockquote>

The diagram shows how each tag is rendered

Drawing

Regular emoji can be copied and pasted directly into the text. If you want to use custom emoji, use this tag:

Emoji and custom emoji

Use @AdsMarkdownBotarrow-up-right to get the emoji ID. Just start the bot and send it your emoji. The reply includes the ID.

Testing

Always test your message before sending. Use β€œsend to yourself”. If the message has an error, Telegram will show it.

Read the error, translate it, ask an AI, or contact support. We will help you figure it out.

Method 2: MarkdownV2 (for people who like symbols)

If you select MarkdownV2, formatting is done with special characters (asterisks, underscores, and tildes). It is faster, but there is a very important nuance (see below).

MarkdownV2 cheat sheet

What you want to do
What to type in the field
What the user will see

Bold text

*Bold text*

Bold text

Italic

_Italic text_

Italic text

Strikethrough

~Old price~

Old price

Link on a word

[Click here](https://emaple.com)

β›” IMPORTANT: Exclamation mark issue (Bad Request)

In MarkdownV2, many punctuation marks are β€œservice characters”. Telegram treats them as part of the markup.

Bad Request: can't parse entities: Character '!' is reserved...

The message will NOT be sent, and you will get this error:

If you just type:

❌ Hi! or Discounts up to 50%.

Hi\! Discounts up to 50%\. We are live\.

βœ… Correct:

What to do? You must add β€œprotection” before punctuation. That shield is a backslash: \. This is called β€œescaping”.

(Notice: backslashes before exclamation marks, dots, and the minus sign.)

Characters that MUST have \ before them:

  1. Dot .

  2. Exclamation mark !

  3. Minus (hyphen) -

  4. Brackets ( ) [ ] { }

  5. Plus +

  6. Equals =

  7. Hash #

  8. Vertical bar |

Example of a correct MarkdownV2 message:

Full list of MarkdownV2 commands

Bold

*bold*

Italics

_italics_

Strikethrough

~Strikethrough~

__underline__

__underline__

Spoiler

||spoiler||

Link

[text](http://site.com)

Code

`code`

Pre-formated

Block quotation started

>Block quotation started

Block quotation continued

>Block quotation continued

Expandable bloc quotation started

**>Expandable bloc quotation

Expandable bloc quotation continued

>Expandable bloc quotation

Emoji

![πŸ‘](tg://emoji?id=123456)

Emoji and custom emoji

Regular emoji can be copied and pasted directly into the text. If you want to use custom emoji, use this syntax:

Use @AdsMarkdownBotarrow-up-right to get the emoji ID. Just start the bot and send it your emoji. The reply includes the ID.

Testing

Always test your message before sending. Use β€œsend to yourself”. If the message has an error, Telegram will show it.

Read the error, translate it, ask an AI, or contact support. We will help you figure it out.

Last updated