When your agent reaches a step it should not take alone, HumanAuth sends it to your phone. You see exactly what it wants to do, approve or deny with a biometric, and your backend gets a signed receipt it checks before anything runs.
Before a risky step — a wire, a refund, a production deploy, a delete — the agent sends an approval request with the exact action and its parameters.
The right people get a push notification. The request reads in plain language, with every parameter shown and a severity at a glance.
Approve with Face ID, a fingerprint or Touch ID — or deny with a reason. The decision is signed by a key that was generated on the device and never leaves it.
The agent gets a signed receipt. The service that runs the action verifies it offline before executing. No receipt, no action.
A pause-and-ping tool tells your workflow that someone pressed approve. Whatever arrives at the callback is believed — and nothing downstream can check it later.
HumanAuth returns a receipt signed twice: by a key that exists only on the approver's device, and by the platform. It is bound to a hash of the exact action the person saw, so changing the amount by one cent breaks it. Your service verifies it offline with an open-source verifier and burns it after one use.
When an auditor asks who approved a payment, the answer is a document you can check yourself, not a row in someone else's database. Read the security model.
Approvers open the app for seconds at a time, often mid-task. It shows what they are being asked to permit and nothing else.
Claude Code, Cursor and any MCP client get an approval gate in front of risky tool calls, with no change to the agent.
MCP guide →One call to request approval and wait for the decision — from LangChain, CrewAI, the OpenAI Agents SDK, or your own loop.
SDK reference →A community node pauses the workflow until a human approves, then carries the receipt to the next step.
n8n approvals →Anything that can send an HTTP request can ask for approval. There is no native Make or Zapier module yet — their HTTP steps can call the API directly.
API spec →A human-in-the-loop app puts a person's decision in the middle of an automated workflow. When an AI agent or automation reaches a step that should not happen without a human — spending money, changing production, touching customer data — it pauses and sends the request to a phone. A person approves or denies it, and the workflow continues or stops.
Yes. HumanAuth is on the App Store for iPhone and iPad, on Google Play for Android, and there is a menu-bar app for the Mac. All three run the same approval flow.
Most HITL tools tell your workflow that someone clicked approve. HumanAuth hands it a receipt signed twice — once by a key that lives only on the approver's device and once by the platform — and bound to a hash of the exact action the person saw. Your backend checks that receipt offline before it acts. Change the action by one cent and the check fails, and a forged approval message has nothing valid to carry.
n8n has a native community node, n8n-nodes-humanauth. Make and Zapier have no native HumanAuth module yet; their HTTP steps can call the HumanAuth API directly, as can any tool that can send an HTTP request.
Yes. The HumanAuth MCP server puts an approval gate in front of an agent's risky tool calls with no change to the agent, and the TypeScript SDK covers custom agents and frameworks such as LangChain, CrewAI and the OpenAI Agents SDK.
1,000 approval requests are free every month, with every feature included. After that it is $0.03 per request. Approvers and devices are never billed.
Onboarding is hands-on for now: request access and we set you up with an API key and a working approval. Approvers install the app and join with an invite code from the person who set it up.
Tell us what your agent does and we will set you up with an API key and a working approval. Comparing tools? See how HumanAuth compares with HITL.sh.