Human-in-the-loop API for builders

Add human approval to your AI product.

Reach your customer in the native Pushary app for a confirmation, choice or written answer. Pushary handles enrollment, delivery and the recorded response. Your application protects the action, validates the answer and continues the correct workflow.

Your product pays. Enrolled customers answer in the native app without a separate account or paid plan.

How it works

From customer question to validated answer

Your backend creates the review, the enrolled customer answers on their phone, and your application validates the outcome before continuing.

  1. 01

    Your agent creates a decision

    Your backend selects the authorized reviewer, completes customer enrollment, and creates a confirm, select or input decision. Keep protected actions behind an enforced application or framework gate; an optional ask tool does not enforce approval.

  2. 02

    Your end-user approves, denies, or answers

    The enrolled customer answers in the native Pushary app. Confirm requests can offer notification actions; choices and written answers open the app. Slack and legacy web compatibility remain available where configured. Your product pays; the reviewer needs no separate Pushary account or paid plan.

  3. 03

    You resume on the answer

    Your backend reads the recorded outcome after a signed callback or polling. Validate the intended reviewer, action and saved run before continuing. Your application owns persistence, replay handling and recovery if continuation fails or its result is uncertain.

Decisions come in three shapes: 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 for a year.

What you get

The approval plumbing, done once

Customer enrollment, phone delivery and recorded answers are built in. Your backend verifies callbacks and owns protected execution and recovery.

Durable decisions API

Each decision has a stored ID, status and outcome that your backend can read after the original request ends. To continue a stopped workflow, your application must also save its own run state and decision mapping. A recorded answer is not proof that the action completed.

Signed webhooks

A signed callback tells your backend about a decision outcome. Verify it using the documented signing scheme, then validate the stored decision against the intended reviewer and action. Signature verification alone does not authorize execution or prevent duplicate processing.

TypeScript SDK, REST, and MCP

Call it however your stack works. The typed SDK for Node and edge runtimes, a plain REST endpoint for any language, or the MCP tool so an agent framework can create a decision as a native tool call.

365-day audit log

Who asked, what was asked, who answered, and when, kept for a full year and exportable. When a customer or an auditor asks why your product did something, you have the record.

Native customer answers

Enroll the customer in the native Pushary app and ask for confirmation, a choice or text. Confirm can offer notification actions; select and input open the app. Existing Slack delivery and legacy web compatibility remain available where configured.

Scoped to your product

Resolve the authorized reviewer from your application, then bind the decision to that enrolled customer. Present your requesting-product identity within Pushary. This does not require a private-label mobile app, and the person requesting an action is not automatically its approver.

Who builds on it

Teams putting an agent in front of real users, where a wrong autonomous action has a cost and a human sign-off is expected.

AI product teams

You ship an agent that needs customer input before proceeding. Use Pushary for enrollment, delivery and recorded answers while your application keeps its permissions, execution and run storage.

Automation and workflow platforms

Your users build flows that need customer answers. Connect a recorded response to the framework's pause and resume mechanism, with persistent state and explicit outcome handling in your application.

Vertical SaaS with agents inside

Your product needs a named reviewer and a record of their answer. Start with a compact decision the customer can understand on their phone; your team remains responsible for domain-specific permissions and requirements.

Agent framework builders

You maintain a framework or template others build on. Offer a first-class human-in-the-loop primitive your users can call over MCP or REST instead of asking them to roll their own.

Pricing

One flat plan for the embed

Embed the approval loop in your own product for your own end-users. No per-seat math on your customers.

$99/ month, Partner plan
  • Up to 25,000 end-users
  • 100,000 decisions per month
  • Durable decisions API, signed webhooks
  • TypeScript SDK, REST, and MCP access
  • 365-day exportable audit log
  • Native customer answers

FAQ

Questions, answered

How do I add human approval to my AI agent?
First enforce a gate on the protected action in your application or framework. Enroll the authorized customer and send the relevant facts through Pushary. Your backend validates the recorded response before permitting that specific action. Use confirm for an approval; select and input return data rather than permission for an unrelated action. Follow the integration guide for the package version you have installed.
What is a human-in-the-loop API?
A human-in-the-loop API lets your product request a person's input and retrieve their response. Pushary provides customer enrollment, phone delivery and a recorded outcome. Your application or framework owns the action gate and continuation. A missing response supplies no human approval and should remain distinct from an explicit rejection.
Can my serverless agent wait for a human?
Yes, with application-owned recovery. Create an asynchronous decision, save its mapping to your persisted run, and let the invocation return. A callback or polling worker can later retrieve and validate the answer, then continue the intended run. Configure framework persistence and handle duplicates, expiry and uncertain execution; a stored decision alone cannot recover a stopped agent.
How do I verify the webhook?
Use the integration guide's exact header, payload and signature-verification procedure for your endpoint. Reject invalid callbacks. After verification, retrieve the authoritative decision and check its reviewer, action and run binding before continuation. Handle duplicate and stale callbacks explicitly; a valid signature does not by itself make a business action safe to execute.
How is this different from notifications?
A decision collects a typed response and stores its outcome. It can be used during a short blocking request or an asynchronous review. Your application decides how that answer affects the workflow and whether an action is authorized. Plain notifications remain available when no answer is needed.
Does my end-user need a Pushary account?
No separate Pushary account, API key or paid plan is required for your enrolled end-user. Your product pays for Partner. The customer follows your enrollment link and uses the native Pushary app to answer. Confirm can offer notification actions; choices and text open the app. Existing Slack delivery and legacy web compatibility remain available where configured.
What does the AI agent approval SDK support?
Use the SDK, REST or Partner MCP tools documented for your installed version and runtime. They support customer decisions with confirm, select and input answers. Framework adapters have different approval and persistence requirements. Updated adapter APIs awaiting release are not implied by an existing npm or PyPI package; use the version-specific package reference.
How much does the embed use case cost?
The Partner plan is $99 a month. It covers up to 25,000 end-users and 100,000 decisions a month, with the durable decisions API, signed webhooks, the TypeScript SDK, REST and MCP access, and the 365-day audit log. Your product pays for one Partner workspace; enrolled reviewers do not need their own paid plan. Discuss separate client workspaces before an agency rollout.

Give your product a way to ask a human.

Enroll your customer, send a compact question to their phone, and retrieve the recorded answer. Your application validates it and continues the intended workflow.

Start with Partner

Want the code first? Read the integration guide.