Add native support for dynamic Telegram inline keyboard buttons

The idea is:

Add UI elements to the Telegram node that allow creating dynamic inline keyboard buttons within the “Send Message” operation. While there is currently some inline keyboard functionality in the UI, it only supports manually entered (static) options. This feature request is specifically for supporting dynamic content—so button text and actions can be set from previous node outputs, not just hardcoded.

The implementation would include:

  • A dedicated “Inline Keyboard” section in the node UI

  • Options to add buttons with different types (URL, callback data, etc.)

  • Ability to organize buttons into rows

  • Fields to configure button text and actions using expressions or previous node data

  • Proper integration with Telegram’s API format

My use case:

I’m building Telegram bots that require interactive elements such as:

  • Navigation menus for different bot sections

  • Quick reply options for common user requests

  • Confirmation buttons for user actions

  • Links to external resources or documentation

  • Multi-step forms where users make choices

My main need is for these buttons to be generated dynamically based on previous node output, not just static text.

Currently, I must use HTTP Request nodes and manually construct JSON for the reply_markup parameter, which complicates my workflows and makes them harder to maintain.

I think it would be beneficial to add this because:

  • Inline keyboards with dynamic content are a fundamental feature for advanced Telegram bots

  • The current workaround requires technical knowledge of Telegram’s API structure

  • Competing platforms (Make, Zapier) already offer this capability natively

  • It would significantly improve the user experience for creating Telegram bots

  • Current implementation causes unnecessary complexity in workflows

  • It would help retain users who might otherwise switch to competitors with better Telegram support

  • It aligns with n8n’s philosophy of making automation accessible with minimal technical barriers

Any resources to support this?

Are you willing to work on this?

I have development skills, but I believe this should be implemented natively by the n8n team to ensure full integration and long-term support.