Telegram Multi Actions (Stage) icon

Telegram Multi Actions (Stage)

Send all Telegram content types (text, media, video note, sticker, location, poll, dice, etc.) via Grammy. Supports URL, file_id, and n8n binary. Optional Redis rate limit, retry on 429, separate output for 403 (user blocked bot).

Send Voice

AI-generated

Summary

Send a voice message to a Telegram chat

Inputs

  • botToken — Bot token from input (e.g. from Orchestrator/Strapi)
  • chatId (required) — Telegram chat ID to send the voice message to (usually from previous node)
  • replyToMessageId — Message ID to reply to (usually previous message_id)
  • replyMarkup — Inline keyboard or reply keyboard markup (JSON) to attach to the voice message
  • mediaSource — Source of media: 'url' for URL or File ID, or 'binary' for binary data property
  • media — URL or file_id of the voice media; for binary source this is the property name
  • binaryPropertyName — Name of the binary property in the input item that contains the voice file
  • caption — Optional caption text for the voice message
  • captionEntities — Optional caption entities (formatting) for the caption
  • useRateLimit — Enable Redis rate limiting to avoid 429 errors (requires Redis credential)

Output shape

Telegram voice message object (JSON) representing the sent message

Success output contains a single message object; errors are routed to error or blocked outputs. Optional fields such as message_id may be present.

Examples

Example 1: Forward a voice file from a previous node and send it to a chat

botToken from input; chatId = {{$json.chatId}}; binaryPropertyName = data; mediaSource = binary; media = {{$json.binaryPropertyName}}; caption = {{$json.caption}}

Example 2: Send a voice message using a public URL

botToken from input; chatId = {{$json.chatId}}; mediaSource = url; media = {{ $json.media }}; caption = {{ $json.caption }}

Example 3: Reply to a specific message with a voice note

botToken from input; chatId = {{$json.chatId}}; replyToMessageId = {{$json.message_id}}; mediaSource = url; media = {{ $json.media }}; replyMarkup = {{$json.reply_markup}}

Links

Discussion