Human-in-the-loop for n8n

Let AI propose. Let your customer decide.

Hold the exact action in your workflow until the intended customer approves it on their phone.

The integration

Add it to your n8n agent

Pushary's open-source n8n package adds customer decision delivery and verification. The new Pushary Decision node creates an asynchronous request, checks the saved customer and action, and exposes a strict approved result. A native n8n Wait node persists the pause between reads. Install version 0.2.0 or later for customer Decisions and import the example from GitHub. Version 0.1.0 contains only the legacy operator node.

Settings → Community Nodes → Install: n8n-nodes-pushary

import customer-approval.json from the repository
Trusted Action → Create Decision → Check Approval → Approved?
                                      ↑                ├─ true → Simulated Action
                                      │                └─ false → Still Pending?
                                      └──── Wait 2 min ←─────────┤
                                                               └─ no → Stop

// Bind External ID in the Decision credential.
// Keep operationId and the exact action in trusted workflow state.
// The final example node simulates an effect; it sends no refund.

Why you need it

n8n pauses the agent. Pushary reaches the human.

n8n supplies workflow persistence, Wait and native human review options. Pushary adds a decision addressed to your customer by externalId and a verified answer tied to the action. Put the protected action behind the workflow's approval branch. Pushary is not a built-in channel in n8n's Human Review dropdown, and this community package is not yet verified for the n8n Cloud catalog.

What n8n already gives you

Keep n8n in charge of the waiting execution

Use native Wait between authenticated decision reads. The example waits two minutes so n8n can persist the execution; keep its execution database durable across restarts. The polling deadline stops an unanswered workflow.

Where it stops

  • An HTTP request timeout is not durable workflow orchestration.
  • An optional AI tool asking a question does not force the model to seek approval.
  • A webhook can wake a verifier; an unverified callback payload cannot authorize the action.

Before you ship it

Things that bite on n8n

Do not let the model choose the approver
Bind External ID in credentials. Validate the proposal upstream and freeze the customer, business target, operation ID and complete action. Do not use $fromAI() for approval identity or the expected snapshot.
Poll the existing request
Use Check Approval after Wait, not another Create. A stable operation ID is the creation idempotency key. Changing the draft requires a new operation version and approval.
Gate the real side effect
Connect the action only to approved === true and execute the verified action output. The destination still needs business-level idempotency: replaying an approved execution must not issue a second refund.

How it works

From ask to resume

Connect the phone once, then ask a human from the tool or step that guards the action. The waiting, the delivery, and the record are handled for you.

  1. 01

    Install the community package

    On self-hosted n8n, install n8n-nodes-pushary from Settings → Community Nodes. Use version 0.2.0 or later for the Decision node. The README documents the legacy 0.1.0 operations separately.

  2. 02

    Configure the customer credential

    Use a Partner API key and the enrolled customer's External ID in a Pushary Decision API credential. Keep keys out of exported workflows.

  3. 03

    Import and adapt the workflow

    Import customer-approval.json and select the credential on Create and Check. Validate the AI proposal before the Trusted Action step; the final action is deliberately simulated.

  4. 04

    Verify before executing

    After each native Wait, re-read the saved decision. Only the matching customer's answered confirm with yes passes. Terminal states and the deadline stop the workflow.

A decision is a yes or no confirm, a multiple-choice select, or a free-text input. Every one is stored with its outcome and kept in the audit log.

The Partner plan

Your agent asks your users, not just you

Ship the agent to real users and let each of them approve their own decisions from their phone, under your brand.

$99/ month, every framework included
Start with Pushary

Your users never see a Pushary login or bill.

Your users answer on their own phones

The externalId is your own id for the end-user. Connect their phone once with a keyless one-tap link that opens the Pushary app, and every approval lands with the right person. No account and no key on their side.

Durable, fail-closed waits

Pushary stores the decision; your application persists its own paused workflow and schedules resumption. Require an explicit, verified approval before acting. Pending, expired and cancelled requests are not approval.

Phone-first delivery

Pushary reaches the person on the device they carry: the app first, because it is the only channel that puts Approve and Deny on a lock screen, then PWA push notifications, then Slack if you route it there. You do not build a delivery pipeline.

Signed webhooks and an audit trail

Every decision is written to a durable ledger you can query and export, and resolved decisions post a signed webhook to your callback URL. You have the record of who approved what and when.

FAQ

Questions, answered

Is there a Pushary n8n community package?
Yes: install n8n-nodes-pushary on self-hosted n8n. Version 0.2.0 adds the customer Decision node and an importable durable workflow; 0.1.0 supplies only legacy operator operations. It is not yet a verified n8n Cloud package.
Can this act as a decision layer for an n8n AI Agent?
Yes, when your workflow enforces the boundary. Let the agent propose, validate and freeze the action, request customer review, and connect execution only to the verified approval branch. Do not give the agent a separate ungated route to the same action.
Can approval survive an n8n restart?
The example uses a two-minute native Wait and rechecks the saved decision after resuming. n8n must retain its execution database. Pushary stores the customer decision separately; it does not store or recreate the n8n execution.
What if the customer declines or never answers?
Check Approval returns approved false for pending, denied, expired and cancelled decisions. The example waits only while pending and before its deadline, then stops. Errors never grant approval.
Does an approved workflow guarantee exactly one action?
No. Keep the saved operation ID and require the destination to deduplicate by the business operation. A verified approval authorizes the reviewed action; it does not prevent an external service from executing a replay twice.

Let your n8n agent ask a human.

Connect a user with one tap, ask a human with one call, and act on a fail-closed decision. Every decision is saved to a durable ledger you can audit.

Start with Pushary

Partner plan, $99 a month. Your users never see a Pushary login or bill.