Webhooks Not Working in Local n8n (Docker, v1.85.4)

Hi everyone!

I’m trying to set up webhooks in a local n8n instance (Docker, v1.85.4) but keep hitting a wall:

  • Server returns 404 for POST requests, even though the URL and method match the webhook node settings.

What We’ve Tried:

  1. Webhook Node Setup:

    • Method: POST
    • Path: /webhook-test/<UUID> (exact match in requests)
    • Authentication: None
    • Workflow is active (green toggle enabled).
  2. Test Requests via curl:

    curl -X POST "https://<subdomain>.hooks.n8n.cloud/webhook-test/<UUID>" \
      -H "Content-Type: application/json" \
      -d "{\"test\":\"data\"}" \
      -v
    
    • Response: HTTP/1.1 404 Not Found
    • n8n UI is accessible at http://localhost:5678, but logs show no errors.
  3. Environment Details:

    • Launched via Docker with --tunnel flag:
      docker run -d --rm \
        --name n8n \
        -p 5678:5678 \
        -v n8n_data:/home/node/.n8n \
        docker.n8n.io/n8nio/n8n:1.85.4 \
        start --tunnel
      
    • Data persists in volume (n8n_data).

Key Observations:

  • Tunnel URL (e.g., https://<subdomain>.ngrok.io) appears in logs, but webhook calls fail.
  • Local requests to http://localhost:5678/webhook-test/<UUID> also return 404.

Questions:

  1. Are there known issues with webhooks in v1.85.4?
  2. Could this be Docker/network related (hosts, ports, firewall)?
  3. How can we debug why requests aren’t reaching the workflow?
  4. Does --tunnel interfere with local webhook handling?

Logs:

docker logs n8n | grep -i "webhook\|tunnel"  # No errors found

Any help is appreciated!


P.S.

  • Verified exact URLs from the webhook node.
  • Recreating the node/workflow didn’t help.
  • Happy to share screenshots or additional logs if needed.

Note:
If you’ve faced similar issues, especially with --tunnel, please share your insights!


Debugging Commands We Ran:

# Check tunnel status:
docker exec n8n curl -s http://localhost:5678/rest/tunnel

# List active workflows:
curl -s http://localhost:5678/rest/workflows?active=true | jq .

Hi @Incognito_NO_NAME Welcome to n8n :n8n: community :tada:

Make sure you’re using the correct URL. With --tunnel, n8n registers the webhook on the tunnel URL (e.g.https://<subdomain>.ngrok.io), not on localhost.

Verify your test request matches the tunnel URL and that the webhook node path is an exact match.

If issues persist, try explicitly setting the WEBHOOK_URL env variable.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.