Lane's Blog

© Lane Arnold. All Rights Reserved

Image

Proxmox Alerts with Telegram

July 20, 2026 - Lane Arnold

Telegram

I have been using Proxmox in our enterprise environment for years now. And we have had our alerts sent to slack. However, when I decided to setup my home lab for experimentation, I did not want to set up a personal slack to get push notifications for my home proxmox. After some research on the best platform to use for push notifications (not only for proxmox but future personal projects), I have settled on Telegram. Below is my journey to getting Telegram push notifications working consistently through Proxmox Alerts.

Making a Telegram BOT

The first step is to create a BOT in Telegram. I used BotFather to accomplish this. Go to the searchbar and search for @BotFather (with the blue checkmark), or use this URL. You then will message "/start" to start the BotFather service. We will now create our BOT. Message "/newbot", it will then ask for a name of your bot, i.e. "MyAlerts". Followed by asking for the username for your bot that needs to end in 'bot', for example: "myalerts_bot". Congratulations, you have created your bot. It will spit out your secret bot token. Write this down, we will need it later.

The Wait

After creating your bot, it will take some time for your bot to propagate globally. When I did this it took ~24 hours.

Creating Channel(s)

After the bot has propagated, we will create a channel for the BOT to post alerts in.

Create a new group and name it appropriately. Then invite the BOT as a member of the group. Finally, promote the BOT to an administrator of the group.

Invite @getidsbot to the group. It will return the id of the cannel once @getidsbot joins. This is the channel ID which we will need for API calls.

Sanity Check

If we have set up everything correctly, we can sanity check this through a curl request using our BOT token and channel ID:

curl -X POST https://api.telegram.org/bot<BOT token>/sendMessage   -d chat_id=<channel ID>   -d text="Test message from curl"

If everything was done correctly, we will receive a message from our bot in our channel that we have created.

Proxmox Alert Configurations

Now that we have our bot working and have tested sending messages, we can now finally configure Proxmox to send Alerts to Telegram. (This works for both PVE and PBS). I have it set up this particular way due to the constraints of the Telegram API (limit of 4000 characters, etc.).

Go to Datacenter > Notifications > Notification Targets > Add > Webhook.

Endpoint Name: <Your Endpoint Name (i.e. Telegram Personal)>

Method/URL: POST

https://api.telegram.org/bot{{ secrets.token }}/sendMessage

Headers: Content-Type application/json

Body:


{
"chat_id": "{{ secrets.chat_id }}",
"text": "⚠️PVE Notification⚠️\nSeverity: {{ severity }}\nHost: {{ fields.hostname }}\nType: {{ fields.type }}\nJob ID: {{ fields.job-id }}\nTimestamp: {{ timestamp }}\nError Log: {{ escape title }}",
"parse_mode": "Markdown"
}
                            

Secrets: token <BOT Token> chat_id <chat ID>

Datacenter > Notifications > Notification Matchers > select default-matcher > Modify

Targets to notify > <Your Endpoint Name (i.e. Telegram Personal)> > OK

Conclusion

Huzzah! We now have our Proxmox (PVE or PBS) Alerts sent via push notifications to a Telegram group.