TypeScript icon, indicating that this package has built-in type declarations

0.2.8 • Public • Published

Telegram Bot Client

Simple, light-weight Telegram Bot Client for Node.js.

NodeJS npm telegram 5.7 quality license mit

last commit size vulnerabilities Total alerts Code quality

This library is part of Botocrat Framework and can work as a standalone library.

What's the difference?

  • You don't have to think about the order of the arguments, same as official API
  • Lightest weight (< 5 kb)
  • Minimal dependencies
  • Future-proof (Only types will added on Telegram API changes)
  • Bent as http requester

What's missing?

This library intented to make requests to Telegram Bot API server and handling responses only. Handling updates from telegram or other high level features is not a purpose of this library. Use the framework to receive and handle updates.

Getting started

npm i @botocrat/telegram --save
import createClient from '@botocrat/telegram'

const client = createClient({token: '123456789:BB...'})

const me = await client.getMe()

TypeScript Support

import createClient, {ITMessage} from '@botocrat/telegram'

const client = createClient({token: '123456789:BB...'})

const Message: ITMessage = {
  chat_id: -11111111, 
  text: "Hello", 
  protect_content: true
const sent = await client.sendMessage(Message)

Feature: Download File From Telegram

const [data, ext, size] = await client
  .then(client.download) // Buffer

fs.writeFileSync("fileName." + ext, data)

Feature: Intercepting request

You can intercept the request by defining interceptor. This feature is implemented for logging purpose and it's optional.

const client = createClient({
  token: '123456789:BB...',
  interceptor: (method, params, formData) => {
    console.log(`${method} called | ${Date.now()}`)



Param Description
token Telegram bot token


Param Description Default
debug Debug function null
baseUri Telegram API url https://api.telegram.org
fileSizeLimit Size limiter for .download() method Infinity (no limit)
interceptor callback to intercept request before sent null

No need for extra documentation, all API methods and parameters explained in Official Telegram Bot API Documentation



MIT License

Package Sidebar


npm i @botocrat/telegram

Weekly Downloads






Unpacked Size

230 kB

Total Files


Last publish


  • alperkursat