step

telegram

Execute Telegram Bot API operations.

Overview

Execute Telegram Bot API operations.

Supports operations: - send_message: Send text message - send_photo: Send photo with optional caption - send_document: Send document/file - edit_message: Edit existing message - delete_message: Delete message - get_updates: Get bot updates

Setup: 1. Create a Telegram bot by messaging @BotFather on Telegram 2. Use the /newbot command and follow the prompts to create your bot 3. Copy the bot token provided by BotFather (format: 123456:ABC-DEF1234...) 4. Get chat IDs by messaging your bot and checking https://api.telegram.org/bot<TOKEN>/getUpdates 5. Store your bot token securely (e.g., as an environment variable: TELEGRAM_BOT_TOKEN)

Bot Token: Required. Get from @BotFather on Telegram

Examples

Send text message

Send a simple text message to a chat

type: telegram
bot_token: ${env:TELEGRAM_BOT_TOKEN}
operation: send_message
chat_id: ${user.telegram_chat_id}
text: "Your order #${order.id} has been shipped!"
output_to: telegram_result

Send photo with caption

Send a photo with markdown caption

type: telegram
bot_token: ${env:TELEGRAM_BOT_TOKEN}
operation: send_photo
chat_id: ${chat_id}
photo: https://example.com/image.jpg
caption: "*Product Update*\nNew item available!"
parse_mode: Markdown
output_to: photo_result

Send notification alert

Send urgent notification with silent mode off

type: telegram
bot_token: ${env:TELEGRAM_BOT_TOKEN}
operation: send_message
chat_id: ${admin_chat}
text: "🚨 Alert: Server CPU at ${cpu_percent}%"
disable_notification: false
output_to: alert_result

Configuration

Parameter Type Required Description
bot_token string Yes Telegram Bot API token obtained from @BotFather
operation string No Operation to perform: send_message, send_photo, send_document, edit_message, delete_message, or get_updates
Default: "send_message"
Options: send_message, send_photo, send_document, edit_message, delete_message, get_updates
chat_id string No Unique identifier for the target chat or username of the target channel (in the format @channelusername)
text string No Text of the message to be sent (1-4096 characters after entities parsing), for send_message or edit_message operations
photo string No Photo to send: HTTP URL of the photo or file_id of an existing photo on Telegram servers
document string No Document to send: HTTP URL of the file or file_id of an existing document on Telegram servers
caption string No Caption for the photo or document, 0-1024 characters after entities parsing
parse_mode string No Mode for parsing entities in the text/caption: Markdown, MarkdownV2, or HTML
message_id string No Unique message identifier (required for edit_message and delete_message operations)
reply_markup string No Additional interface options: inline keyboard, custom reply keyboard, instructions to remove keyboard or to force a reply
disable_notification boolean No Sends the message silently - users will receive a notification with no sound
Default: false
offset string No Identifier of the first update to be returned for get_updates (must be greater by one than the highest among the identifiers of previously received updates)
limit integer No Limits the number of updates to be retrieved for get_updates operation (1-100, default 100)
Default: 100
timeout integer No HTTP request timeout in seconds
Default: 30
output_to string No Key name where the API response will be stored in the event
Default: "telegram"

Base Configuration

These configuration options are available on all steps:

Parameter Type Default Description
name null Optional name for this step (for documentation and debugging)
description null Optional description of what this step does
retries integer 0 Number of retry attempts (0-10)
backoff_seconds number 0 Backoff (seconds) applied between retry attempts
retry_propagate boolean false If True, raise last exception after exhausting retries; otherwise swallow.