Hi n8n Community,
I’m having an issue with n8n v1.93.0 (Docker on Windows/WSL2) where the Respond to Webhook
node doesn’t evaluate expressions in its JSON body. It returns the literal expression string instead. This happens even in a minimal test workflow.
Describe the problem/error/question
Respond to Webhook
node (in “Respond With: JSON” mode) outputs literal expressions like {{ $json.variable }}
instead of their evaluated values.
What is the error message (if any)?
No n8n execution error. The HTTP response itself contains the unevaluated expression.
Please share your workflow (Minimal Test Case)
-
Webhook Node
(Trigger):- Path:
testrespuesta
- Respond:
Using 'Respond to Webhook' Node
- Path:
-
Set Node
:- Sets field:
mi_mensaje
(String) =This is a simple test
- Sets field:
-
Respond to Webhook Node
:- Respond With:
JSON
- Response Body:
{"mensaje_test": "{{ $json.mi_mensaje }}"}
- Respond With:
Share the output returned by the last node
- Expected:
{"mensaje_test":"This is a simple test"}
- Actual:
{"mensaje_test":"{{ $json.mi_mensaje }}"}
(Will attach screenshot of browser output)
Information on my n8n setup
- n8n version:
1.93.0
- Database: SQLite (default)
- Running n8n via: Docker Desktop on Windows [11] with WSL 2.
- Docker command:
docker run -it --rm --name n8n -p 5678:5678 -v "C:\Users\[USER_NAME]\.n8n:/home/node/.n8n" ... n8nio/n8n
(el resto de tu comando)
Key things checked:
- Webhook trigger set to
Using 'Respond to Webhook' Node
. - Workflow is active when testing.
- Input data to
Respond to Webhook
node is correct. - Tried various expression syntaxes and recreating nodes.
- Docker logs show “GET testrespuesta” received, no obvious errors.
Has anyone seen this with v1.93.0 on Docker/WSL2, or have any ideas why expressions might not be evaluating?
Thanks,
Beto