Telegram
Create tasks from Telegram bot commands and route them by Telegram sender.
1. Create a Telegram bot
In Telegram open @BotFather, run /newbot, choose the bot name and username, copy the bot token, and add the bot to the target chat. Read Telegram Bot API.
2. Create the Denly connection
Open Workspace → Integrations → Connect → Telegram. Use the bot/chat identifier, bot token, command alias /denly, chat/project mapping, and optional notification chat ID.
Routing is optional. Leave Default Denly assignee blank for unassigned tasks, or choose one workspace member to own everything from this connection.
For per-person routing use Route by external assignee: each row pairs one person in the provider (left) with a workspace member (right), and + adds another row. Routing follows the item's assignee in the provider, not whoever created it, and a matching row beats the default above.
The left-hand value must be the identifier the provider actually sends, which the field's placeholder names for you. Matching ignores surrounding spaces and letter case, but nothing else: a near-miss routes nothing and looks the same as a broken integration.
Map keys are numeric Telegram user IDs – Telegram sends the sender's numeric ID with every command, so a username will not match. Each person can get their ID by messaging @userinfobot in Telegram.
3. Register the Telegram webhook
Call Telegram’s setWebhook method with the generated URL and secret:
https://api.telegram.org/bot<BOT_TOKEN>/setWebhook?url=https://your-public-host/integrations/telegram/webhook/YOUR_CONNECTION_ID&secret_token=YOUR_INBOUND_SECRET- Replace the bot token, connection ID, and secret.
- Run the request once.
- Confirm
ok: true.
4. Test and troubleshoot
Send /denly fix the failing test. Processed creates the task; Skipped means the command, chat or project mapping did not match. An empty list means X-Telegram-Bot-Api-Secret-Token does not match the secret given to setWebhook.
Denly