Copy Message
telegram.copy_message
ActionChat & messagingconnection required
Calls the Telegram API with the connection's credentials.
Copy a message to another chat with no link back to the original.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- Telegram
- Secret shape
- the bot token, or {"token": "…"}
- Resolved by
- config.connection_id, else node.connection_id
Configuration
10 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
chat_id The chat to copy to: a numeric chat/user id, or an @channelusername. | string | Yes | — | — | — |
from_chat_id The chat the original message is in: a numeric id or @channelusername. | string | Yes | — | — | — |
message_id Id of the message to copy, as numbered in from_chat_id. | integer | Yes | — | ≥ 1 | — |
caption Replacement caption for media; the original is kept when blank. | string | No | — | ≤ 1024 characters | — |
parse_mode How to format the text: 'MarkdownV2', 'HTML', or blank for plain text. MarkdownV2 needs every literal _ * [ ] ( ) ~ ` > # + - = | { } . ! escaped with a backslash or Telegram rejects the whole message, so prefer HTML for text interpolated from an expression. | string | No | — | one of "", "MarkdownV2", "HTML" | — |
show_caption_above_media Show the caption above the media; ignored without a new caption. | boolean | No | — | — | — |
disable_notification Deliver silently — the recipient's device stays quiet. | boolean | No | — | — | — |
protect_content Stop recipients forwarding or saving the copy. | boolean | No | — | — | — |
message_thread_id Topic id inside a forum supergroup; leave blank for the main thread. | integer | No | — | ≥ 1 | — |
reply_markup Keyboard or markup for the message, as the JSON object Telegram documents (inline_keyboard, keyboard, remove_keyboard or force_reply). A JSON string is accepted too and parsed for you. | object | No | — | — | — |
Output
One shape.
result
| Field | Type | Example |
|---|---|---|
ok True when Telegram accepted the call. | boolean | true |
chat_id Chat the copy landed in. | string | — |
message_id Id of the new copy; copyMessage returns only this. | number | — |
{
"chat_id": "",
"message_id": 0,
"ok": true
}Notes
- chat_id is a numeric chat/user id or an @channelusername. A bot can only message a user who started it, or a group/channel it has been added to.
- The bot token sits in the request URL, so it is redacted out of every error message and dry-run report these nodes produce.
- Telegram answers HTTP 200 even for failures; the node reads the {'ok': …} envelope and raises on ok:false with Telegram's own description.
- Service, paid-media, giveaway and invoice messages cannot be copied.
See Copy Message run in a workflow.
In a technical demo we add the Telegram connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.