Skip to content
PluginStats

@chat-adapter/telegram weekly downloads statistics

By chat-adapter (14 listings) · npm · AI SDKs

Telegram adapter for Chat SDK — Bot API webhooks, inline keyboards, reactions, and streaming

View on npm Fresh · Oct 17, 2026

@chat-adapter/telegram has 151,600 recorded weekly downloads on npm, a decrease of 34.4% over the past 30 days.

It ranks #409 of 2,256 tracked npm listings by weekly downloads.

Over 90 days, weekly downloads changed by -4.8%.

PluginStats has 121 daily observations since Jun 19, 2026; the latest is from Oct 17, 2026.

Weekly downloads
151,600
Official API · Oct 17, 2026
7-day growth
-54.7%
-183.1K weekly downloads
30-day growth
-34.4%
-79.5K weekly downloads
90-day growth
-4.8%
-7.7K weekly downloads
Rank
#409
Among tracked npm listings

About @chat-adapter/telegram

@chat-adapter/telegram

npm package: @chat-adapter/telegram

Telegram adapter for Chat SDK. Configure for bot webhooks and messaging.

Documentation: chat-sdk.dev/adapters/official/telegram · Guides: vercel.com/kb/chat-sdk

Installation

Scaffold with the CLI

To scaffold a new Telegram bot with this adapter preselected:

Visit the adapters directory to see other available official and vendor-official adapters.

Quick start

For managed credentials, see Vercel Connect.

The adapter auto-detects TELEGRAM_BOT_TOKEN, TELEGRAM_WEBHOOK_SECRET_TOKEN, TELEGRAM_ALLOW_UNVERIFIED_WEBHOOKS, TELEGRAM_BOT_USERNAME, TELEGRAM_MENTION_ON_REPLY, and TELEGRAM_API_BASE_URL from environment variables:

Configuration

Most options are auto-detected from environment variables when not provided. nativeStreaming and streamingEditIntervalMs are config only and have no environment variables.

| Option | Required | Description |

| allowUnverifiedWebhooks | No | Accept webhook requests without secret-token verification. Auto-detected from TELEGRAM_ALLOW_UNVERIFIED_WEBHOOKS=true. Use only for local development or behind a trusted verifying proxy | | allowedUserIds | No | Telegram user IDs allowed to trigger the adapter. Auto-detected from TELEGRAM_ALLOWED_USER_IDS (comma-separated). All users are allowed when omitted or empty | | botToken | No* | Telegram bot token. Auto-detected from TELEGRAM_BOT_TOKEN | | secretToken | Webhook* | Webhook secret token. Auto-detected from TELEGRAM_WEBHOOK_SECRET_TOKEN | | mode | No | Adapter mode: auto (default), webhook, or polling | | longPolling | No | Optional long polling config for getUpdates (timeout, limit, allowedUpdates, deleteWebhook, dropPendingUpdates, retryDelayMs) | | businessMode | No | Enable Telegram Business mode (business_connection, business_message, edited_business_message). Defaults to false | | userName | No | Bot username used for mention detection. Auto-detected from TELEGRAM_BOT_USERNAME or getMe | | mentionOnReply | No | Treat a reply to one of the bot's own messages as a mention, so it routes to onNewMention. Defaults to false. Auto-detected from TELEGRAM_MENTION_ON_REPLY=true. Implicit forum-topic replies and the bot's own messages never count | | nativeStreaming | No | Stream with Telegram's native draft previews in private chats. Defaults to false, which uses post-and-edit in every chat type | | streamingEditIntervalMs | No | Minimum interval between edits on the post-and-edit streaming path. Defaults to 1100 in private chats and 3100 in other chats, and acts as a floor for the Chat-level streamingUpdateIntervalMs | | apiUrl | No | Telegram API base URL. Auto-detected from TELEGRAM_API_BASE_URL. Use apiUrl for cross-adapter consistency; the legacy apiBaseUrl alias is still accepted | | logger | No | Logger instance (defaults to ConsoleLogger("info")) |

*botToken is always required. Webhook mode also requires secretToken unless allowUnverifiedWebhooks is explicitly enabled. Polling mode does not require webhook verification.

Authentication

Use Vercel Connect to manage the outbound bot token, or provide the token directly. Both options use Telegram's native webhook verification; polling does not require a webhook secret.

Option A — Vercel Connect

Use connectTelegramAdapter to resolve the outbound bot token from Vercel Connect:

Connect does not forward Telegram webhooks. Keep TELEGRAM_WEBHOOK_SECRET_TOKEN when using webhook mode, or use polling mode without an inbound webhook. TELEGRAM_BOT_TOKEN is not needed when using the Connect helper. The adapter derives webhook deduplication scope from Telegram's stable bot identity, so token rotation does not split update claims. If bot identity lookup fails at startup, the next accepted webhook retries it.

Option B — Bot token

Create a bot via BotFather and provide its token directly to the adapter:

1. Send /newbot and follow the prompts. 2. Copy the token to TELEGRAM_BOT_TOKEN. 3. Optionally pick a username and copy it to TELEGRAM_BOT_USERNAME.

Webhook route

Configure this URL as your bot webhook in BotFather / Telegram API:

Business mode (Connected Business Bots)

Enable Telegram Business mode when your bot manages customer conversations on behalf of a connected business account:

With businessMode: true, the adapter:

• Handles business_connection, business_message, and edited_business_message updates • Skips messages typed by the business owner, messages the bot itself sent on the account's behalf (sender_business_bot), and connections without can_reply • Encodes business threads as telegram:biz:{connectionId}:{chatId}. Each business conversation is its own channel, kept apart from any direct chat the same customer has with the bot • Passes business_connection_id on outbound sendMessage, edits, typing, file uploads, and on threads created from inline-keyboard callbacks • Routes /commands from business chats through onSlashCommand, the same as regular chats • Deletes messages with deleteBusinessMessages, which needs the can_delete_sent_messages right on the connection • Stores connection state in the Chat SDK state adapter, so a revoked or disabled connection is honoured by every running instance

Reactions are not available on business threads. The Bot API has no business variant of setMessageReaction, so addReaction and removeReaction throw a NotImplementedError there.

When polling, the adapter always sends an explicit allowed_updates list in Business mode: the default update types plus the business ones, or your longPolling.allowedUpdates merged with the business ones. Telegram otherwise reuses whatever list an earlier call set, which can silently exclude business updates. When registering a webhook yourself, include the business update types:…

Description from the npm listing.

  • chat
  • chat-sdk
  • chatbot
  • telegram
  • telegram-bot
  • bot
  • adapter
  • bot-api
  • messaging
  • ai-agent
  • ai-sdk
  • vercel

Where @chat-adapter/telegram sits in the listing

Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

All npm2,256 listings · 113 pages · page 21, #9 (overall #409)
All npm: every listing in weekly downloads order
PNG SVG
AI SDKs250 listings · 13 pages · page 1, #15 (overall #15)
AI SDKs: every listing in weekly downloads order
PNG SVG

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@chat-adapter/telegram weekly downloads on npm, last 90 days: 151,600 weekly downloads as of Oct 17, 2026, -4.8% over 90 days.@chat-adapter/telegramWeekly downloads on npm · Last 90 days151,600downloads / week-4.8% over 90 days0100K200K300K400K500KJul 19Aug 3Aug 18Sep 2Sep 17Oct 2Oct 17downloads / weekobservedarchived (Internet Archive)no observationsJul 21, 2026 – Oct 17, 2026 · 89 observations · Updated Oc…pluginstats.com
@chat-adapter/telegram weekly downloads on npm, last 90 days: 151,600 weekly downloads as of Oct 17, 2026, -4.8% over 90 days.
PNG SVG

7/30/90-day growth

@chat-adapter/telegram weekly downloads growth on npm: -54.7% over 7 days, -34.4% over 30 days, -4.8% over 90 days.@chat-adapter/telegramWeekly downloads growth on npm151,600downloads / week now7-day growth-183,145 weekly downloads-54.7%30-day growth-79,537 weekly downloads-34.4%90-day growth-7,688 weekly downloads-4.8%Growth vs. nearest observation to each baseline date · Updated Oct 17, 2026pluginstats.com
@chat-adapter/telegram weekly downloads growth on npm: -54.7% over 7 days, -34.4% over 30 days, -4.8% over 90 days.
PNG SVG

Ranking history

@chat-adapter/telegram npm ranking history: currently #409 (by weekly downloads).@chat-adapter/telegramnpm ranking · by weekly downloads · Last 90 days#409current rank#407#408#409#410#411Jul 21Aug 5Aug 20Sep 4Sep 19Oct 4Oct 19rankOct 18, 2026 – Oct 19, 2026 · 2 observations · Updated Oct 17, 2026pluginstats.com
@chat-adapter/telegram npm ranking history: currently #409 (by weekly downloads).
PNG SVG

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Recent observations

Full history (121)
Recent weekly downloads observations for @chat-adapter/telegram
Date (UTC)Weekly downloadsChange vs. previous
151,600-41.3K
192,855-4.3K
197,117-68.3K
265,424-58.9K
324,2740
324,274-2.8K
327,065-7.7K
334,745-8.1K
342,839+3.4K
339,455+1.8K
337,666-4K
341,715-69.4K
411,098-5.6K
416,670—

Similar npm AI SDKs plugins

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@chat-adapter/telegram. First seen Oct 16, 2026; last successful collection Oct 19, 2026. See the methodology.