Reading as an AI? Append .md to this URL for markdown — /llms.txt
Back to Docs
Telegram inbox

Turn your Telegram bot into a Kronos inbox

Hook up your business's Telegram bot so every customer message lands in the same Kronos inbox you already use for WhatsApp, Instagram, and Messenger. Your AI agent can reply on its own, you can take over manually, and everything is threaded by conversation.

TL;DR

  1. In Telegram, open @BotFather, send /newbot, save the token.
  2. Open Kronos → Connect → tap Connect Telegram.
  3. Paste the token. Done.
  4. First customer message lands in your Kronos inbox automatically.
This is the inbox — YOUR bot, YOUR customers. If you want personal Kronos alerts on YOUR Telegram instead, see Telegram Notifications. Different feature, different setup.

Creating your bot in BotFather

If you've never made a Telegram bot:

  1. Open Telegram and search for @BotFather (the verified one with a blue check).
  2. Tap Start, then send /newbot.
  3. BotFather asks for a display name (e.g. "Acme Support") and a username (must end in bot, e.g. acme_support_bot).
  4. BotFather replies with a long token like 123456789:AAH... — that's what you paste into Kronos.
Keep the token safe. Anyone with it can read every message sent to your bot and post as your bot. Don't share it. Once it's in Kronos, it stays encrypted on our server and you never see it again — exactly how it should be.

Connecting your bot in Kronos

  1. Open Kronos → Connect in the sidebar.
  2. You'll see four channel cards — Instagram, Messenger, WhatsApp, Telegram. Tap Connect Telegram.
  3. A small modal opens with a single field. Paste the BotFather token.
  4. Tap Connect. Kronos checks the token with Telegram and registers your bot. Takes about a second.
  5. The bot shows up in your "Connected inboxes" list. You're live.

If something goes wrong, Kronos tells you what happened (invalid token, bot already connected, etc.) and lets you try again — no half-connected mess.

Connecting more than one bot

Just repeat. Each bot becomes its own independent inbox in Kronos with its own conversation list, agent assignment, and history. Popular setups:

  • One bot per market (US / Mexico / Brazil) with locale-specific agents.
  • Separate Sales and Support bots that route to different teams.
  • Staging vs production bots while you're testing.

What happens when a customer messages your bot

  1. The message lands in your Kronos inbox under the conversation with that user, with their Telegram name visible.
  2. If the inbox has an assigned AI agent, the agent reads the message and replies in your customer's chat within seconds.
  3. The conversation lives in /app/chat like any other — read it, jump in manually, see the agent's reasoning, search history.
  4. If the customer changes their Telegram name, Kronos refreshes it on the next message automatically.

If the customer sends a photo, voice note, document, or other media, Kronos receives it but doesn't process media yet — the inbox shows a placeholder so your agent can still respond with text. Full media support is on the roadmap.

How your agent replies

Three ways your agent can send a Telegram message:

  • Automatic inbound reply. When a customer messages you, the agent's response is sent automatically.
  • Mid-conversation explicit send. If you've enabled the Telegram tool on your agent (advanced setting), the agent can send extra messages within a turn — e.g. "let me check that for you" followed by the real answer.
  • From your own code via the Kronos API or MCP. Same as for WhatsApp, just set the channel to Telegram.
A few Telegram-specific limits:
  • Bots can only reply to people who messaged them first. Telegram does not allow cold outreach.
  • No templates. Templates are a WhatsApp thing. On Telegram, just send free text.
  • Text only for now. Sending photos / files / voice is on the roadmap.
  • No proactive follow-ups from cron. Surprising people on Telegram is the fastest way to get blocked.

What if a user blocks your bot

If someone blocks your bot in Telegram, Kronos notices the next time it tries to send a message:

  • That conversation is flagged as blocked — your agent stops replying to it.
  • You get a notification in the Kronos NotificationCenter so you know.
  • If the user unblocks later, message them once manually from Kronos to confirm; auto-detection is on the roadmap.

What you get vs. what you don't (v1)

You'll get

  • As many Telegram bots as inboxes as you want.
  • Inbound text messages routed to your Kronos inbox.
  • Automatic agent replies with conversation threading.
  • Realtime conversation list and message view.
  • Send messages from your own code via the Kronos API or MCP.

You won't get

  • Cold outreach (Telegram forbids it).
  • Templates / tags (those are WhatsApp concepts).
  • Sending photos / files / voice from Kronos (text only for now).
  • Scheduled follow-up pings on Telegram.
  • Automatic unblock detection (manual workaround for now).
  • Editing a message after it's sent.

Disconnecting

From the Connect page, tap Disconnect on the bot row. Kronos:

  • Tells Telegram to stop sending messages to us.
  • Removes the bot token from Kronos.
  • Deletes the integration.

Your past conversations stay (history preserved) but new messages stop reaching Kronos. You can reconnect the same bot later — just paste the token again. If you also want to delete the bot from Telegram entirely, go to BotFather → /deletebot.

Troubleshooting

"We could not authenticate that token with Telegram"

The token is either typo'd or has been revoked in BotFather. Re-copy it from BotFather (long-press to copy on mobile, or click the token in BotFather's reply). Make sure no extra whitespace.

"Telegram rejected the webhook setup"

Telegram couldn't reach Kronos at the URL we tried to register. Usually a transient network hiccup — wait a minute and retry. If it keeps happening, contact support.

"This bot is already connected to your account"

You already have this bot connected. Check your Connected inboxes list — it's there. If it's missing, try refreshing the page; sometimes a stale cache hides it.

The bot is connected but doesn't reply to my customer

Open the conversation in /app/chat: does the agent panel show an agent? If not, assign one. If yes, check the NotificationCenter for an 'Agent turn failed' alert — that means the AI provider had a problem; the message will be retried on the next inbound.

Send returns "send_failed"

Most common cause: the user blocked your bot. Check the conversation in /app/chat — Kronos flags blocked conversations automatically and a notification appears in the NotificationCenter.

"multiple_integrations_require_id" from the API

When you have more than one Telegram bot, the API can't guess which one you mean. Pass integration_id in the request body — you can find it on the Connect page when you hover over a bot.

My customer sent a sticker / photo and the agent didn't understand

Media support is on the roadmap. For now Kronos receives media but doesn't process it. Your agent sees a placeholder and can ask the customer to describe what they sent.

FAQ

Does Kronos see my bot token?

It's encrypted on the Kronos server and used only to call Telegram on your behalf (validate, register webhook, send messages). It's never shown back to you, never logged, never sent to a third-party service.

Can I migrate a bot from another platform?

Yes. Paste the BotFather token into Kronos. Kronos takes over the webhook automatically; the previous platform stops receiving messages. The bot keeps its name, username, history with users — Telegram-side stuff is untouched.

Can I add my bot to group chats?

Yes. Once added, group messages show up in Kronos as a single conversation per group. Telegram's privacy mode hides most group messages from bots by default; change it in BotFather (/setprivacy → Disable) if you want the bot to see all group messages.

How is this different from the Kronos notifications bot?

The notifications bot pushes YOUR Kronos alerts to YOUR personal Telegram. The inbox bot handles YOUR customers' incoming messages. Completely separate features.

Can I edit a message after it's sent?

Not from the Kronos inbox in v1. Telegram supports it; let us know if it's important to you.

Why can't my agent message Telegram users 24+ hours after their last message?

People block bots that ping them out of the blue. We'd rather you lose a potentially-good follow-up than have your customer block the bot and lose them forever. If you really need to reach out, message them manually from /app/chat — that doesn't have the limit.

Ready to connect?

Open /app/connect → tap Connect Telegram.

Open Connect
For AI agents and LLMs: every docs page has a clean markdown twin — append .md to its URL. Curated index: /llms.txt. Open semantic search, no auth: POST https://api.kronos.com.mx/v1/docs/search.
Telegram Inbox — Kronos AI Docs | Kronos AI