1)Désactive le workflow
2)Attends environ 10 secondes.
3)Active le workflow
4)Ne clique PAS sur « Execute Workflow » après avoir fait cela.
5)Va directement dans ton application Telegram.
6)Envoie un message à ton bot.
7)Vérifie l’onglet Executions dans n8n (dans la barre latérale gauche) pour voir si l’exécution est apparue.
Ça marche maintenant ?
Colle l’URL suivante dans ton navigateur (remplace <YOUR_BOT_TOKEN> par ton jeton réel) :
Si l’url contient /webhook-test/, Telegram est en Mode Test. Ton workflow actif ne se déclenchera pas. Tu dois activer le workflow à nouveau pour le basculer vers /webhook/.
Si l’url contient /webhook/, Telegram est en Mode Production. S’il ne se déclenche toujours pas, vérifie s’il y a des champs last_error_message dans cette réponse JSON.
@Ilona_Ilona Vérifiez la présence d’un champ last_error_message dans la réponse getWebhookInfo. C’est le journal des erreurs de Telegram lui-même et il affiche souvent exactement pourquoi la livraison échoue, par exemple des problèmes de certificat SSL, un timeout, ou n8n renvoyant une réponse autre que 200. C’est le moyen le plus rapide de diagnostiquer si le webhook est enregistré correctement mais que les messages ne sont pas livrés.
Assurez-vous également que vous vérifiez l’onglet Executions (Exécutions), et pas seulement le canvas, les exécutions en production ne s’affichent pas sur le canvas, uniquement dans la liste des exécutions.
Salut @Ilona_Ilona Bienvenue !
Séparez les bots de test et de production. Créez un deuxième bot dans BotFather, enregistrez son token en tant que deuxième identifiant Telegram, et conservez cet identifiant sur le déclencheur pendant que vous construisez, puis revenez à l’identifiant de votre bot en direct avant de publier.
En vous appuyant sur les suggestions getWebhookInfo ci-dessus — si cet appel affiche l’URL de production /webhook/ et qu’il n’y a toujours pas d’exécution, deux choses méritent d’être vérifiées et qui n’ont pas encore été mentionnées :
Forcez une réinscription complètement propre. Telegram conserve parfois une inscription obsolète même après que n8n l’ait réinitialisée. Avec le workflow DÉSACTIVÉ, appelez :
Confirmez que getWebhookInfo affiche maintenant une url vide, puis activez le workflow. n8n enregistrera le webhook de production à nouveau. drop_pending_updates=true vide également une file d’attente engorgée — si pending_update_count dans getWebhookInfo est élevé, Telegram a tenté de relancer d’anciennes mises à jour et peut sembler « mort » pour les nouvelles.
Recherchez un deuxième consommateur du même jeton de bot : un autre workflow (même inactif-mais-testé) utilisant la même credential, une deuxième instance n8n (ancien essai, Docker local), ou tout script externe interrogeant getUpdates. Le polling et les webhooks s’excluent mutuellement — pendant que votre webhook est défini, un appel getUpdates brut renvoie 409 Conflict (le webhook lui-même survit), mais beaucoup de bibliothèques de polling réagissent à cela en appelant deleteWebhook automatiquement, ce qui efface silencieusement l’inscription n8n. Vérifiez tous les endroits où ce jeton a jamais été collé.
Comme vous êtes sur Cloud, aucun problème SSL/reverse-proxy ne s’applique, donc c’est presque certainement l’un de ces deux cas.
Si vous collez le JSON getWebhookInfo complet ici (masquez le jeton dans l’URL), je peux vous dire dans quel cas vous êtes.
Une étape utile consiste à inspecter l’état réel du webhook de production du bot au lieu de simplement réactiver le workflow. Ouvrez cette URL dans un navigateur (remplacez <TOKEN>) :
Veuillez partager ces champs masqués : url, pending_update_count, last_error_date, last_error_message, allowed_updates et max_connections. Le résultat identifie généralement rapidement l’échec :
URL contient /webhook-test/ : Telegram est toujours enregistré sur le webhook de test temporaire.
URL est vide : l’enregistrement de production a échoué.
URL contient /webhook/ plus une erreur : suivez l’erreur TLS, DNS, redirection ou non-200 affichée là.
Le nombre de mises en attente augmente constamment : n8n n’accuse pas réception des livraisons.
L’URL semble correcte et il n’y a pas d’erreur de livraison : vérifiez les conflits de jetons et les types de mises à jour.
Assurez-vous également qu’un seul Telegram Trigger actif utilise ce jeton de bot et qu’aucun autre workflow ou script n’interroge le même bot avec getUpdates. Telegram permet un seul webhook/consommateur par jeton de bot.