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:
-
Webhook Node Setup:
- Method:
POST
- Path:
/webhook-test/<UUID>
(exact match in requests) - Authentication:
None
- Workflow is active (green toggle enabled).
- Method:
-
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.
- Response:
-
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
).
- Launched via Docker with
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:
- Are there known issues with webhooks in v1.85.4?
- Could this be Docker/network related (hosts, ports, firewall)?
- How can we debug why requests aren’t reaching the workflow?
- 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 .