Skip to content

Workflow with Respond to Webhook does not reply a 500 status error when failing #21827

@ebarault

Description

@ebarault

Bug Description

Consider the following test workflow where the webhook is configured to respond using 'Respond to Webhook' Node:
Image

According to the doc here:

The workflow errors before the first Respond to Webhook node executes: the workflow returns an error message with a 500 status.

So, when executing the workflow via the webhook, and the workflow failing at the Debug node, the workflow should respond an error message with a 500 status. But instead, the webhook returns a 200 OK when an empty body.

To Reproduce

Build a similar workflow, and call the associated webhook url.
The webhook responds an empty message with 200 status code

{
  "name": "test_webhook",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "1fcc15ad-868f-47b8-86dd-ecbbbda6dfe8",
        "authentication": "headerAuth",
        "responseMode": "responseNode",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2.1,
      "position": [
        0,
        0
      ],
      "id": "5755594d-539e-45e1-ac06-089654fb81f6",
      "name": "Webhook",
      "webhookId": "1fcc15ad-868f-47b8-86dd-ecbbbda6dfe8",
      "credentials": {
        "httpHeaderAuth": {
          "id": "n8n_webhook_bearer_auth",
          "name": "n8n_webhook_bearer_auth"
        }
      }
    },
    {
      "parameters": {
        "amount": 3
      },
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [
        224,
        0
      ],
      "id": "4f1a51de-3317-41bd-b9b6-477f27eab4c4",
      "name": "Wait",
      "webhookId": "e4e7170d-31fd-4dc3-8ade-f9e410f1e75d"
    },
    {
      "parameters": {},
      "type": "n8n-nodes-base.debugHelper",
      "typeVersion": 1,
      "position": [
        464,
        0
      ],
      "id": "f0db3f7e-a567-4308-9d32-200d8b4b15dc",
      "name": "DebugHelper",
      "alwaysOutputData": false
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "{\n  \"statusCode\": 200,\n  \"body\": { \"status\": \"ok\" }\n}",
        "options": {
          "responseCode": 200
        }
      },
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.4,
      "position": [
        704,
        0
      ],
      "id": "0a9336d6-d70f-41bb-aefb-7d5a1ce18c71",
      "name": "Respond to Webhook"
    }
  ],
  "pinData": {},
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "DebugHelper",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "DebugHelper": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1",
    "callerPolicy": "workflowsFromSameOwner",
    "availableInMCP": false
  },
  "versionId": "6228ce12-9f57-41f7-a5eb-524457d19cea",
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "997b06b96c0f4f8fb033a6ba85f16f24d5448cd1de2de0d24ca01140698467f6"
  },
  "id": "NcdWdq6Ku3MDydZa",
  "tags": []
}

Expected behavior

the webhook should respond an error message with a 500 status code

Debug Info

Debug info

core

  • n8nVersion: 1.119.0
  • platform: docker (self-hosted)
  • nodeJsVersion: 22.21.0
  • nodeEnv: production
  • database: postgres
  • executionMode: regular
  • concurrency: -1
  • license: enterprise (production)
  • consumerId: d1a0d430-fc98-426b-a0e3-bc299f9f2cb4

storage

  • success: all
  • error: all
  • progress: false
  • manual: true
  • binaryMode: memory

pruning

  • enabled: true
  • maxAge: 336 hours
  • maxCount: 10000 executions

client

  • userAgent: mozilla/5.0 (macintosh; intel mac os x 10_15_7) applewebkit/537.36 (khtml, like gecko) chrome/141.0.0.0 safari/537.36
  • isTouchDevice: false

security

  • secureCookie: false

Generated at: 2025-11-13T15:02:59.906Z

Operating System

Official Docker image running on Amazon Linux 2023

n8n Version

1.119.0

Node.js Version

22.21.0

Database

PostgreSQL

Execution mode

main (default)

Hosting

self hosted

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions