OpenClaw Getting Started: Telegram as Your First Real Channel
Move from local quick-start to your first real chat channel with a safe DM-first Telegram setup, a clear verification loop, and fast failure routing.
What this page helps you do
This page gets you from “local OpenClaw works” to “Telegram is live as my first real channel” with one safe path and one clear verify loop.
If you want full Telegram operations (group policy depth, advanced routing, edge cases), use:
Who this is for (and not for)
Use this page if you already completed:
This page is for first-channel setup only. It is not for:
- multi-group policy design
- multi-bot or multi-account routing
- deep network debugging workflows
Before you start
Confirm these three things first:
- Your gateway is healthy:
openclaw status --deep
- You can edit
~/.openclaw/openclaw.json. - You can access
@BotFatherin Telegram.
One safe DM-first path
1) Create a bot token in BotFather
In Telegram, open @BotFather:
- Run
/newbot - Create bot name and username
- Copy the bot token
Keep the token secret.
2) Add minimal Telegram config (DM-first)
Edit ~/.openclaw/openclaw.json:
{
channels: {
telegram: {
enabled: true,
botToken: "123:abc",
dmPolicy: "pairing"
}
}
}
This keeps first contact safe: unknown DM senders need explicit approval.
3) Restart gateway
openclaw gateway restart
4) DM the bot once, then approve pairing
From your Telegram account, send the bot a message. Then on the gateway host:
openclaw pairing list telegram
openclaw pairing approve telegram <CODE>
First-success verification
Use this checklist before moving on:
openclaw channels status --probeshows Telegram healthy.- Your approved account can DM the bot and receive a response.
- Repeat one more DM test after 1-2 minutes; it still works.
If all three pass, your first channel is stable enough to continue.
First three failure branches
A) Bot never responds in Telegram
Most likely: the message never reached the bot context you expect.
Check first:
- correct bot token
- you messaged the correct bot username
- pairing request exists and was approved
Then use:
B) Bot responds in DM but ignores group messages
Most likely: visibility or policy mismatch (privacy mode, admin rights, mention rules, allowlist/group policy).
Use:
C) setMyCommands failed or Bot API requests fail
Most likely: DNS / IPv6 / proxy / egress path to api.telegram.org.
Use:
What to do next
After this page, pick one:
- Stay simple and learn full Telegram controls:
- Harden config and policy:
- Build a symptom-first troubleshooting habit:
Verification & references
- Reviewed by:CoClaw Editorial Team
- Last reviewed:March 19, 2026
- Verified on: Telegram · macOS · Linux · Windows
References
- OpenClaw docs - Gateway configurationOfficial docs
- OpenClaw docs - Telegram channelOfficial docs
- Telegram docs - Bots FAQ (privacy mode behavior)Official docs
- Telegram docs - Bots intro (privacy mode reference)Official docs