Describe the problem/error/question
I am trying to return a challenge from monday.com (successfully done this with Test URL, but failed in production). I used a Respond to Webhook node to return the respond body as follows:
{"challenge":"{{ $json.body.challenge}}"}
This worked for the Test URL, but it doesn't work for the Production URL.
The team in monday.com confirmed that the response they received was a literal string "{{ $json.body.challenge}}", which is weird because the output response body clearly shows the field has been substituted with the challenge key from the input.
I suspect there is a bug where the repsonse sent by n8n failed to substitute the parameter into the string, and instead sent the literal string.
What is the error message (if any)?
No error messages. N8N shows it executed successfully, with the output shown being the correct value
Please share your workflow/screenshots/recording
(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)
⚠️ WARNING ⚠️ If you have sensitive data in your workflow (like API keys), please remove it before sharing.
{
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "c97bc55b-1133-4fd6-b7f9-3c3e02fe057d",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2,
"position": [
-320,
-288
],
"id": "4ac3a88c-36cf-4585-a40e-0f085ad57c00",
"name": "Webhook",
"webhookId": "c97bc55b-1133-4fd6-b7f9-3c3e02fe057d"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "{"challenge":"{{ $json.body.challenge}}"}",
"options": {
"responseCode": 200
}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
-16,
-320
],
"id": "7c75850f-91ff-4ded-ba00-46858c6448e1",
"name": "Respond to Webhook",
"alwaysOutputData": true,
"retryOnFail": false,
"maxTries": 5,
"executeOnce": true
}
],
"connections": {
"Webhook": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
}
},
"pinData": {},
"meta": {
"instanceId": "83bb68aa3cffeacb7897ecaca60363c43b93192254bf52c58cd307c50d674047"
}
}
Share the output returned by the last node
Debug info
core
- n8nVersion: 1.115.3
- platform: docker (cloud)
- nodeJsVersion: 22.20.0
- nodeEnv: production
- database: sqlite
- executionMode: regular
- concurrency: 5
- license: community
storage
- success: all
- error: all
- progress: false
- manual: true
- binaryMode: filesystem
pruning
- enabled: true
- maxAge: 168 hours
- maxCount: 2500 executions
client
- userAgent: mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/141.0.0.0 safari/537.36
- isTouchDevice: false
Generated at: 2025-11-07T05:02:01.947Z}
Describe the problem/error/question
I am trying to return a challenge from monday.com (successfully done this with Test URL, but failed in production). I used a Respond to Webhook node to return the respond body as follows:
{"challenge":"{{ $json.body.challenge}}"}
This worked for the Test URL, but it doesn't work for the Production URL.
The team in monday.com confirmed that the response they received was a literal string "{{ $json.body.challenge}}", which is weird because the output response body clearly shows the field has been substituted with the challenge key from the input.
I suspect there is a bug where the repsonse sent by n8n failed to substitute the parameter into the string, and instead sent the literal string.
What is the error message (if any)?
No error messages. N8N shows it executed successfully, with the output shown being the correct value
Please share your workflow/screenshots/recording
{
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "c97bc55b-1133-4fd6-b7f9-3c3e02fe057d",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2,
"position": [
-320,
-288
],
"id": "4ac3a88c-36cf-4585-a40e-0f085ad57c00",
"name": "Webhook",
"webhookId": "c97bc55b-1133-4fd6-b7f9-3c3e02fe057d"
},
{
"parameters": {
"respondWith": "json",
"responseBody": "{"challenge":"{{ $json.body.challenge}}"}",
"options": {
"responseCode": 200
}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.4,
"position": [
-16,
-320
],
"id": "7c75850f-91ff-4ded-ba00-46858c6448e1",
"name": "Respond to Webhook",
"alwaysOutputData": true,
"retryOnFail": false,
"maxTries": 5,
"executeOnce": true
}
],
"connections": {
"Webhook": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
}
},
"pinData": {},
"meta": {
"instanceId": "83bb68aa3cffeacb7897ecaca60363c43b93192254bf52c58cd307c50d674047"
}
}
Share the output returned by the last node
Debug info
core
storage
pruning
client
Generated at: 2025-11-07T05:02:01.947Z}