Easy to use library for building Telegram bots.

Version on this page:0.2.0@rev:1
LTS Haskell 19.7:0.4.5
Stackage Nightly 2022-05-20:0.4.5
Latest on Hackage:0.5.2

See all snapshots telegram-bot-simple appears in

BSD-3-Clause licensed by Nickolay Kudasov
This version can be pinned in stack with:telegram-bot-simple-0.2.0@sha256:9bced51a22a2368b9b93bf9e420dc91fe5db57ae00a6fc147a0ed297ea5826d2,3551

Module documentation for 0.2.0

  • Telegram
    • Telegram.Bot
      • Telegram.Bot.API
        • Telegram.Bot.API.Games
        • Telegram.Bot.API.GettingUpdates
        • Telegram.Bot.API.InlineMode
        • Telegram.Bot.API.Internal
          • Telegram.Bot.API.Internal.Utils
        • Telegram.Bot.API.MakingRequests
        • Telegram.Bot.API.Methods
        • Telegram.Bot.API.Payments
        • Telegram.Bot.API.Stickers
        • Telegram.Bot.API.Types
        • Telegram.Bot.API.UpdatingMessages
      • Telegram.Bot.Simple
        • Telegram.Bot.Simple.BotApp
          • Telegram.Bot.Simple.BotApp.Internal
        • Telegram.Bot.Simple.Conversation
        • Telegram.Bot.Simple.Debug
        • Telegram.Bot.Simple.Eff
        • Telegram.Bot.Simple.InlineKeyboard
        • Telegram.Bot.Simple.Reply
        • Telegram.Bot.Simple.UpdateParser


Easy to use library for building Telegram bots in Haskell.

Disclaimer: this library is under development. It is usable for most stuff, but is still far from a stable release.

LambdaConf 2018 workshop

This library was featured in a LambdaConf 2018 workshop. The supplementary materials for the workshop is available at


Contributions are welcome! Feel free to ping me on GitHub, file an issue or submit a PR :)




  • Major changes:

  • Minor changes:

    • Add getEnvToken helper (see ce7d1f7);
    • Add IsString instance for Telegram.Token (see f105bb9);
    • Print Servant errors when getUpdates fails (see bc7c5bb);
    • Split Telegram.Bot.Simple into several submodules (see 8ed2783);
    • Add withEffect helper in Telegram.Bot.Simple.Eff (see aebba52);
    • More Haddock documentation;
  • Fixes:

    • Resolve #7 (see #8);
    • Fix undefined in startBotAsync and add more documentation (see 7879066);
    • Fix inline buttons issue (see #10);