All nodes/Integrations/Telegram

Telegram Reaction

Puts (action=set) or removes (action=clear) the bot's emoji reaction on a Telegram message. A blank Chat ID means the chat of the running turn; templates are supported. Uses the bot this workflow is deployed to; set 'Connection source' to 'External connection' to pick a different bot through the 'telegram_config' port.

Telegram Reaction
Telegram ConfigSuccess
Error

Type in the graph: set_telegram_reaction

Exec

An error branch can be enabled (expose_error_output) to handle failures on their own path.

Try it

Minimal working workflow

Entry
Telegram Reaction
Exit
  • Execute
  • Execute + Data
Press “Copy nodes”, open the editor and hit Ctrl+V on the canvas.

Runs as pasted

When to use it

A reaction is the cheapest way to say “got it” without adding a message to the chat. The typical use: the bot puts 👍 on a request when it is picked up and 🎉 when it is closed, or marks a message that went to moderation. When you need words, use Send Telegram Message.

How it works

One node covers both directions. “Set a reaction” sends the chosen emoji; “Clear the bot’s reactions” sends an empty list and removes what the bot put there earlier. The emoji set is fixed by Telegram itself, which is why the field is a list rather than free input.

Chat ID accepts a numeric id or @channelusername; a blank field means the chat of the running Telegram turn. Message ID is required and must be a number — usually {{ nodes.entry.data.telegram.message_id }} or the message_id from a send node’s output.

Common mistakes

  • A bot gets one reaction per message. A new one replaces the previous one instead of adding to it. “First 👀, then ✅” works; “👀 and ✅ at once” does not.
  • Clearing does not touch other people’s reactions. It removes the bot’s own only.
  • A blank Message ID stops the node — and so does a template that rendered to an empty string: a reaction that never happened must not look successful.
  • A Telegram refusal fails the step. Reactions disabled in the chat, a message too old, the bot removed — turn on the error output if the branch has to survive that.
  • Setting a reaction and receiving one are different things. For the workflow to start on a user’s reaction, tick the “Reactions” update type in the deploy panel; sending the bot’s own reaction does not depend on that subscription.
  • The big animation applies to setting only, and on many clients it looks like an ordinary reaction anyway.

Inputs

PortWirePayloadNotes
Telegram Configtelegram_configDatadata

shown when connection_source ≠ "auto"

Outputs

PortWirePayloadNotes
SuccessoutputExecute + Dataexecute_dataobject
Erroron_errorExecute + Dataexecute_data

shown when expose_error_output = true

Configuration

FieldTypeDefaultDescription
Connection sourceconnection_sourcestringauto

Where this node gets its connection. 'From the run context' uses what the platform already knows (the Telegram bot this workflow is deployed to / this workspace's own file store) and needs no wiring. 'External connection' shows the resource port so a config node can be wired into it.

Options: auto — From the run context, external — External connection (wire a config node)

Actionactionstringset

Put an emoji reaction on a message, or remove the bot's reactions from it.

Options: set — Set a reaction, clear — Clear the bot's reactions

Chat IDchat_idstring""

Target chat: numeric chat_id or @channelusername. Templates are supported, e.g. {{ nodes.entry.data.telegram.chat_id }}. Blank = the chat of the running Telegram turn (a run started anywhere else then fails: there is no chat to infer).

supports templates

Reactionemojistring👍

The emoji to react with (Telegram allows only a fixed set).

Options: 👍, 👎, , 🔥, 🥰, 👏, 😁, 🤔, 🤯, 😱, 🤬, 😢, 🎉, 🤩, 🤮, 💩, 🙏, 👌, 🕊, 🤡, 🥱, 🥴, 😍, 🐳, ❤‍🔥, 🌚, 🌭, 💯, 🤣, , 🍌, 🏆, 💔, 🤨, 😐, 🍓, 🍾, 💋, 🖕, 😈, 😴, 😭, 🤓, 👻, 👨‍💻, 👀, 🎃, 🙈, 😇, 😨, 🤝, , 🤗, 🫡, 🎅, 🎄, , 💅, 🤪, 🗿, 🆒, 💘, 🙉, 🦄, 😘, 💊, 🙊, 😎, 👾, 🤷‍♂, 🤷, 🤷‍♀, 😡

shown when action = set

Message IDmessage_idstring""

Numeric id of the message to act on. Templates are supported, e.g. {{ nodes.send_message_1.message_id }}.

supports templates

Advanced
Big animationis_bigbooleanfalse

Play the large reaction animation.

shown when action = set

Shared fields

Every node has these three — the platform adds them, not the node author.

  • expose_error_output — When enabled, show an execution output to connect nodes that run if this step fails.