@Federico_Gentile ce 404 signifie qu’une requête GET a effectivement atteint le nœud même s’il est configuré en POST, donc quelque chose change la méthode, pas la config du nœud.
Deux causes habituelles avec ngrok :
Test en ouvrant l’URL dans un navigateur. La barre d’adresse envoie toujours GET. Un POST doit provenir de curl/Postman ou Telegram.
Une redirection qui rétrograde la méthode. Si tu appelles l’URL ngrok http:// (ou si tu accèdes à une redirection avec barre oblique finale), la redirection 301/302 vers https transforme ton POST en GET. Utilise directement l’URL ngrok https, et définis WEBHOOK_URL=https://ton-domaine-ngrok pour que n8n émette du https.
Comment envoies-tu la requête défaillante : navigateur, curl, ou setWebhook de Telegram ?
Merci beaucoup pour votre réponse. Pour l’instant, j’envoie la requête via la barre de recherche du navigateur, ce qui pourrait en être la raison. Si je veux la tester correctement, qu’est-ce que vous me recommanderiez d’utiliser ?
@Federico_Gentile oui, c’est ça, la barre de recherche envoie un GET donc ça va toujours générer cette erreur.
Pour tester, envoie une vraie POST. Le plus rapide c’est curl:
curl -X POST -H "Content-Type: application/json" -d '{"hello":"world"}' https://your-ngrok-domain/webhook-test/9390c7f6-894b-4948-9579-8d9ec556dc7b
Un truc à savoir avec l’URL de Test: clique sur « Listen for test event » d’abord, ça capture une seule requête tant que c’est activement à l’écoute. Postman marche aussi, il suffit de mettre la méthode sur POST.
Pour la vraie config Telegram, bascule sur l’URL de Production, active le workflow, puis pointe le setWebhook de Telegram sur cette URL https. Telegram envoie les mises à jour en POST, donc ça va se comporter comme ton Telegram Trigger le fait déjà.
L’erreur se produit parce que Telegram essaie d’accéder à votre URL webhook avec une requête GET, tandis que votre nœud Webhook n8n est configuré pour n’accepter que les requêtes POST.
Voici quelques points à vérifier :
Assurez-vous que vous utilisez l’URL de production (ou l’URL de test active en écoute) de n8n et que vous n’ouvrez pas l’URL directement dans un navigateur. Les navigateurs envoient des requêtes GET par défaut.
Vérifiez que le webhook Telegram est enregistré correctement :
Dans n8n, cliquez sur « Écouter l’événement de test » si vous utilisez l’URL de test. Les webhooks de test ne fonctionnent que lorsque le workflow est activement en écoute.
Confirmez que le chemin du déclencheur/webhook Telegram correspond exactement au chemin configuré dans n8n et que ngrok transfère les requêtes vers le bon port n8n.
Si vous visitez manuellement l’URL webhook dans un navigateur et voyez :
{
"code": 404,
"message": "This webhook is not registered for GET requests. Did you mean to make a POST request?"
}
c’est en fait un comportement normal car le point de terminaison n’accepte que les requêtes POST.