"Webhook not registered" when trying to test two separate workflows simultaneously in Test Mode

Describe the problem/error/question

I am experiencing an issue where I cannot test two different workflows simultaneously in “Test Mode,” even though both are currently in the “listening” (Waiting) state.

The Setup:

  • Workflow 1: Starts with a Webhook Trigger.

  • Workflow 2: Starts with a Webhook Trigger (separate file/URL).

  • Both workflows are opened in different browser tabs. I clicked the “Execute Workflow” button for both, so both show the “Waiting for Webhook call…” status.

The Issue:

  1. I send a request to Workflow 1 via Postman → Success.

  2. I immediately send a request to Workflow 2 via Postman → Fails with 404 Error.

The error message claims the webhook is not registered, but the UI clearly shows it is waiting for a call. I noticed the same behavior when using the Form Trigger.

Is it not possible to have multiple active “Test Mode” listeners for different workflows at the same time? Or is there a specific configuration I’m missing?

What is the error message (if any)?

{
    "code": 404,
    "message": "The requested webhook \"workflow2\" is not registered.",
    "hint": "Click the 'Execute workflow' button on the canvas, then try again. (In test mode, the webhook only works for one call after you click this button)",
    "stacktrace": "ResponseError: The requested webhook \"workflow2\" is not registered.\n    at TestWebhooks.getWebhookMethods (/app/packages/cli/src/webhooks/test-webhooks.ts:240:37)\n    at processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at TestWebhooks.executeWebhook (/app/packages/cli/src/webhooks/test-webhooks.ts:84:22)\n    at WebhookRequestHandler.handleRequest (/app/packages/cli/src/webhooks/webhook-request-handler.ts:66:21)\n    at /app/packages/cli/src/webhooks/webhook-request-handler.ts:257:3"
}

Log output:

11:03:04.431   error   Received request for unknown webhook: The requested webhook "workflow2" is not registered. { "currentlyRegistered": [], "file": "webhook-request-handler.js", "function": "handleRequest" }
11:03:04.431   error   404 The requested webhook "workflow2" is not registered. { "file": "response-helper.js", "function": "sendErrorResponse" }

Please share your workflow

Only webhook trigger in the workflow1 and workflow2

Share the output returned by the last node

Workflow1 Output

{

"message": "Workflow was started"

}

Workflow2 Output

{

"code": 404,

"message": "The requested webhook \\"workflow2\\" is not registered.",

"hint": "Click the 'Execute workflow' button on the canvas, then try again. (In test mode, the webhook only works for one call after you click this button)",

"stacktrace": "ResponseError: The requested webhook \\"workflow2\\" is not registered.\\n    at TestWebhooks.getWebhookMethods (/app/packages/cli/src/webhooks/test-webhooks.ts:240:37)\\n    at processTicksAndRejections (node:internal/process/task_queues:105:5)\\n    at TestWebhooks.executeWebhook (/app/packages/cli/src/webhooks/test-webhooks.ts:84:22)\\n    at WebhookRequestHandler.handleRequest (/app/packages/cli/src/webhooks/webhook-request-handler.ts:66:21)\\n    at /app/packages/cli/src/webhooks/webhook-request-handler.ts:257:3"

}

Information on your n8n setup

  • n8n version: 1.123.14
  • Database (default: SQLite): Postgres
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app): Docker
  • Operating system: Linux

Hey @Chris_Huang!

You’re not missing a secret setting, But Sadly this is just how n8n test webhooks work, and yeah, it’s a bit unintuitive.

What’s really happening in background is that the test webhooks in n8n are temporary, single use and shortlived.

I just tried to execute two test webhooks at the same time but n8n doesnt allow it as when you click Execute workflow, n8n registers that webhook only until the first request hits it. Once that request comes in, the test webhook is immediately unregistered.

So in your flow you start Workflow 1 and Workflow 2, both show “Waiting”,
You hit Workflow 1 → works so now that request consumes its test webhook (test1) and then you hit Workflow 2 → n8n says “not registered” even though the UI still says “Waiting”, under the hood there’s no active test webhook anymore. The log line showing currentlyRegistered:

11:03:04.431 error Received request for unknown webhook: The requested webhook “workflow2” is not registered. { “currentlyRegistered”: , “file”: “webhook-request-handler.js”, “function”: “handleRequest” }
11:03:04.431 error 404 The requested webhook “workflow2” is not registered. { “file”: “response-helper.js”, “function”: “sendErrorResponse” }

is the giveaway here.

Can you have multiple test listeners at once?

In practice: no, not reliably.

The editor makes it look like you can, but test webhooks aren’t designed for parallel or repeated calls. They’re basically a one-shot debugging tool, not a real listener.

A couple things to double-check anyway

Make sure each webhook has a unique path + HTTP method. n8n only allows one webhook per path/method combo, even across workflows.

If two workflows accidentally share /webhook-test + POST, one will work because it is in production and is not temporary anymore

I would suggest you totTest one workflow at a time click Execute send exactly one request and then if you want to send another, click Execute again

Use Production URLs for real concurrent testing by activating both workflows then hitting the Production webhook URLs from Postman (Great tool btw)

Production webhooks stay registered and can run in parallel like you’d expect and then you can check results in the Executions tab instead of relying on the canvas

I hope this helps you @Chris_Huang and help you understand this webhook problem as as the UI can sometime show something else but in reality it is something else.

Hi @Chris_Huang ,
When you run workflows in Test Mode in n8n, webhook triggers are only registered temporarily. Even though the UI may show two workflows as “Waiting for webhook call…”, in many self-hosted setups only one test listener actually stays active at a time. As soon as another workflow’s test execution starts—or a conflict happens internally—the first registration can be removed, which leads to the second request returning a 404 “webhook not registered” error. This is why you see the same behavior with Form Trigger nodes, since they also rely on the same temporary test webhook mechanism.

This is not related to needing a domain name or n8n Cloud. Localhost webhooks work perfectly fine if Postman is running on the same machine. The key distinction is between test URLs (/webhook-test/...) and production URLs (/webhook/...). Test URLs exist only while a workflow is actively waiting in Test Mode, while production URLs remain registered as long as the workflow is turned on.

In practical terms, this means parallel testing with multiple webhook-based workflows is unreliable in Test Mode on a single self-hosted instance. The recommended workaround is to activate both workflows and call their production webhook URLs so they can run simultaneously, or else test them one at a time. Also make sure each workflow uses a unique webhook path so they don’t accidentally overlap.

In short, you are not missing any special configuration—this is simply a limitation of how n8n manages Test Mode webhooks.

Thanks for the detailed explanation! I didn’t realize that test webhooks were strictly one-shot and temporary. That completely explains the ‘not registered’ error I was seeing. I’ll try activating the workflows and using the Production URLs for my parallel testing instead. Much appreciated!

1 Like

Thanks for clarifying! I’ve tested it by activating the workflows and using production URLs as you suggested, and it works perfectly. I appreciate the help!

2 Likes

Thanks so much @Chris_Huang for acknowledging this with production workflows.
Can i please ask you to mark it as a solution as it has solved your problem.

Much appreciated, Happy automating Chris!

Hi @Chris_Huang just activate them in Production Mode for reliable parallel testing.

Hey @Chris_Huang I’m really glad it helped you, i would appreciate if you mark it as a solution so people in the future can reference this and it will also help me get a boost here as well.

Thanks so much