# Telegram (/docs/plugins/telegram)



<!-- Generated from the Telegram plugin's manifest by scripts/docs-plugins.mjs. -->

## What it does [#what-it-does]

* **Connection.** A project connects to Telegram separately in each environment, through Telegram's own flow below.
* **Announcements.** A quest's [announcements](/docs/concepts/quests#announcements) can post in what the project connected to Telegram.
* **Trackers.** `telegram.messages()` and `telegram.reactions()` [trackers](/docs/concepts/trackers) record what happens in what the project connected to Telegram. Only Domino's Telegram bot writes their records: ingestion refuses them.
* **Quest code.** `ctx.telegram` reads Telegram in a quest's `evaluate`, declared or not: a quest may list the `telegram` integration module, and doesn't need to.
* **Sign-in.** Members sign in with Telegram: Telegram's own sign-in, `relay.auth.start({ provider: "telegram", mode })`, when Domino configured it; and Telegram Mini App sign-in, `withTelegram(relay).telegram.miniApp` from `@domino-sdk/relay/telegram`, once the project sets `miniAppBotId` in its sign-in settings. Every way in reaches the same Telegram account, so it is one member.

## Connect it [#connect-it]

Each environment has its own connection, and a promotion never copies it.

A project connects Telegram groups and channels, each through Domino's bot. In Console, **Add chat** under **Telegram** on **Integrations** opens the bot in Telegram, which asks you to choose the chat; `management.telegram.connect()` makes the same link. You must be an administrator of the chat, and the bot becomes one there. Removing a chat (`management.telegram.remove(chat)`) makes the bot leave it once no project uses it. The [Telegram guide](/docs/build/telegram) covers the rest.

`domino connections get telegram` and `management.connections.get("telegram")` read its status: `ready` once the project has connected something in this environment, `attention` with an `issue` saying what to fix, and `disconnected` before. They don't connect it: `domino connections connect telegram` answers 409 `plugin-managed`.
