1. Create a bot with BotFather
1
Open BotFather
Search for
@BotFather in Telegram and start a chat. It’s the official bot for managing bots.2
Create the bot
Send
/newbot and follow the prompts. Pick a name (Tallwatch alerts) and a username ending in bot (tallwatch_alerts_bot). The username has to be unique across Telegram.3
Save the token
BotFather replies with a token like
123456789:AAEfghijklmnopqrstuvwxyz. Keep it somewhere safe.2. Add the bot to the chat and find the chat ID
Telegram doesn’t show chat IDs in its client, so you add the bot first, then read the ID from the API.1
Add the bot
In a group, open the group name and Add member, search for your bot’s username, and add it. For a channel, add the bot as an admin so it can post. For a DM, open the bot and press Start.
2
Post a message
Send any message in the chat. This guarantees the bot’s update log has a recent entry to read.
3
Read the chat ID
Open
https://api.telegram.org/bot<TOKEN>/getUpdates in your browser, replacing <TOKEN> with the bot token. Find chat.id in the JSON. It’s negative for groups and channels (-1001234567890) and positive for DMs.3. Add the channel in Tallwatch
1
Open the channels page
Go to Settings → Alerts → Channels and click Add channel.
2
Pick Telegram
Choose the Telegram kind and name it for the audience, like
Telegram on-call.3
Paste the token and chat ID, then test
Put the BotFather token in Bot token and the
getUpdates ID in Chat ID. Click Save, then Send test alert. The message should arrive within a few seconds.What the alert looks like
A Markdown-formatted message:- The event and the monitor name
- The URL, when there is one
- The failing regions
- When the incident opened
- The last error from the check
- Your workspace name
Troubleshooting
`bot was kicked from the group`
`bot was kicked from the group`
Someone removed the bot. Re-add it (as admin for a channel), post a message so
getUpdates works again, and retry the test.`chat not found`
`chat not found`
The chat ID is wrong or the bot was never added. Post a fresh message in the target chat, re-run
getUpdates, and copy the correct ID.The bot doesn't see new messages in `getUpdates`
The bot doesn't see new messages in `getUpdates`
Telegram keeps only the last 24 hours of updates, so old messages expire. Post a fresh one and retry.Also, another long-poll consumer (a second bot integration) may be reading and acknowledging updates before you. If
getUpdates keeps coming back empty, that’s why. Add ?offset=-1 to read just the latest update without acknowledging it.