N8n Wait Node does not support manual click resume in the workflow only

Describe the problem/error/question

We are looking for a resume option in n8n workflow only where user can just hover on the Wait node and click on Resume button or Approve/Reject

What is the error message (if any)?

Please share your workflow

(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.)

Share the output returned by the last node

Information on your n8n setup

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

hello @shakthipsg

What is your use case? Hovering on the Wait node means you are running the workflow manually. In that case, there is no need for any Resume/Approve/Reject responses from the user.

Hi @shakthipsg

It isn’t possible to approve directly inside the workflow UI; a paused execution can only be resumed by a time condition or by an external call to a resume URL.

For human-in-the-loop approval flows, the recommended pattern is to send the resume link to the user via email, Slack, or an internal system. When the user clicks that link (or submits the form), it triggers an external request back to n8n and the Wait node resumes.

A Wait node can resume in only three ways:

  1. Automatically after a configured time (for example, wait 1 hour and continue),
  2. Via an external call to the resume URL ($execution.resumeUrl),
  3. Via form submission using the form resume URL ($execution.resumeFormUrl).

[Wait node; Waiting overview]
[Human-in-the-loop; Slack exemplo]
Time-based
[execution.resumeUrl; On Webhook Call]
[On Form Submitted; Form URL em produção]

Thank you @barn4k @tamy.santos
Yes, main workflow is a manual trigger.

We tried Wait node with ‘On form submit’ and ‘On webhook’ in the sub-workflow which runs in-parallel for n number of items in the input list. In this case, we are not getting the form/resumeUrl for each sub-workflow.
It works as expected if the sub-workflow is sequential, but not for parallel executions.