Give your agent a human — Zapnoty
Infrastructure for agents

Give your agent a human

Your AI agent or a plain cron script needs permission, a clarification or wants to report back? One HTTP request — and a human gets a card with buttons in Telegram or Max. No bot, no webhooks, no infrastructure of your own.

$ curl -X POST https://api.zapnoty.com/v1/agent/ask
  -d '{"question": "Ship v2.4.1 to production?"}'
🤖 Deploy agent · project Shop

Ship v2.4.1 to production?

Reason: all tests green, no DB migrations

✅ Allow for a day
Just this once
❌ Decline

What we take off your plate

To give an agent a channel to a human you normally build a bot, invent a protocol, draw keyboards, restrict access and keep a journal. Weeks of identical work for everyone. We did it once.

Identity & rights

An agent is not a faceless key: name, description, avatar. Rights across 18 resources: none · read · write · ask. “Ask” means the action waits for human approval — granted once or for a period.

Question → button → answer

POST /v1/agent/ask — and the participant gets a card with options in Telegram/Max. The agent picks the answer up via long-poll: works from cron, CI and a laptop — no public address needed.

Commands & wake-up

The agent publishes commands — the human sees “Deploy”, “Status”, “Rollback” buttons in chat and the app. A tap sends the task to the agent. Scheduled runs included.

Control & audit

Pause and revoke in one click, a kill switch for all agents, daily budgets, and a full journal: what the human saw, who pressed what and when. All in the dashboard and the app.

Agent or script — it doesn't matter

It's just HTTP. A bash script in cron, GitHub Actions, a Python daemon or an LLM agent — any code that needs a human “yes” connects in a minute. For AI agents there's MCP: Claude Code and Cursor connect via OAuth with a rights picker.

How to build an agent

Four steps. The first question from your code reaches your messenger within minutes.

  1. 01

    Create the agent in the dashboard

    Name, emoji, a short description — that is what a person sees on the card. Zapnoty issues a key your code uses to speak as the agent.

    Free plan includes three agents.

  2. 02

    Connect what you already run

    A cron script, a CI step, a home server, an LLM agent. One HTTP request: the agent asks and waits. No public address needed — answers arrive by long poll.

    Claude Code and Cursor connect over MCP — no code at all.

  3. 03

    Say who answers

    Participants are the people who get the question and can press a button: you, a colleague, the on-call shift. Nobody else sees the agent or can reply.

    Access is revoked in one click; the decision log stays.

  4. 04

    Answer from your phone

    The card arrives in Telegram, Max and the Zapnoty app: question, buttons, free text. One tap and the agent continues — the decision is recorded.

    No answer in time — the request expires and the agent learns about it.

The entire agent
curl -s https://api.zapnoty.com/v1/agent/ask \
  -H "Authorization: Bearer $KEY" \
  -d '{"question":"Ship 2.4.1?","options":["Yes","No"]}'
# → {"request_id":"agrq_3xK…","status":"pending"}

# wait for the answer — call is held
curl -s -G -d wait=25 -H "Authorization: Bearer $KEY" \
  https://api.zapnoty.com/v1/agent/requests/agrq_3xK…
# → {"status":"answered","answer":"Yes"}

Ask and wait — two requests. No server, no webhook.

🤖 Releases now

Ship 2.4.1 to production?

Yes No

What people hand to agents

A thirty-item technical list is right below. This is what agents get used for by people who never touch code.

Home & life

Courier at the door

“Nobody answers — leave it at the door?” The courier waits a minute instead of driving back to the depot.

Work

Store orders

A large order or an unusual address — the agent asks for confirmation before shipping.

Money

Subscription charge

Tomorrow a service you haven't opened in three months charges you again. Keep it or cancel?

Home & life

A home that asks first

“Nobody home for four hours — turn the heating off?” The house suggests, you decide.

Money

Discount for a customer

Sales asks for 15% beyond policy. The question goes to whoever decides — with the deal size on the card.

Work

Covering a shift

Someone called in sick. The agent asks the shift one by one until a person agrees to come in.

Home & life

Reminders that get answers

“Took your medicine?”, “Meter reading sent?” — with a reply, not a notification into the void.

Work

A request late at night

A customer wrote at 11:40 p.m. Answer now, hand it to on-call, or leave it till morning?

Work

Office supplies

Paper and cartridges are running out. The agent shows the cart and the total — the order goes after your yes.

Home & life

Motion in the yard

The camera saw someone at night. A frame and two buttons: “Ours” or “Call security”.

Home & life

A doctor's slot

A slot opened tomorrow at 3 p.m. Book it now, before someone else takes it?

Home & life

A cab in the morning

“Leaving at 8:40, an hour of traffic — book a car?” One tap instead of an alarm and an app.

30+ scenarios

Half of them involve no AI at all: cron, CI/CD and bash.

DevOps & scripts

01
  • Production deploy by button
  • DB migration with confirmation
  • Data deletion — volume shown on the card
  • Secret rotation for a day
  • Cluster scaling
  • Alert with a “Restart” button
  • Failed backup: retry or wake someone
  • “Merge the PR?” from GitHub Actions

Money

02
  • Invoice payment with amount and payee
  • Refund above a threshold
  • Ad budget extension
  • Purchase by a procurement agent
  • Cancelling an unused subscription

Communications

03
  • Customer email — draft for approval
  • Social media post on behalf of the company
  • Broadcast — text approved before sending
  • Support reply: AI wrote it, human approved
  • “Agent couldn't handle it” escalation
  • Tone check for a negative review reply

Data & decisions

04
  • Moderating borderline content
  • Data labeling in the messenger
  • Picking between three similar options
  • Clarifying a task in free text
  • “Does this candidate fit?”
  • Acceptance: approve or send back

Orchestration & control

05
  • Start an agent with a button from chat
  • Morning digest with action buttons
  • Long task: “continue or stop”
  • Kill switch at night from your phone
  • Quarterly compliance export of decisions
  • Schedule: “every morning at 9 — a task”

FAQ

Your own bot is weeks of work: a webhook server, a question-answer protocol, keyboards, “who may press” control, a journal. Here it all exists already, plus two messengers at once (Telegram and Max), per-resource rights and a kill switch. An agent connects with a single HTTP request.

The kill switch stops all agents with one button: keys and issued grants stay intact, every call gets a 403 — one click to bring them back. Revoking an agent kills its keys instantly. Everything the agent did is in the audit journal.

We store only what delivery needs: question texts, answers and the decision journal. Your agent's logic and data stay with you — we pass messages, we don't run code.

Like regular messages: a question to a human is 1 credit per delivery; answers and task launches are free. Agents are available on every plan, including the free one (3 agents).

Yes — that's the primary scenario. Answers and tasks are picked up via long-poll — nothing to host. Push webhooks exist too if you have a server.

Yes. An agent has a participant list — only they receive questions and can answer. Plus a “writes to participants only” mode and per-resource API rights, down to “everything via ask”.

Connect your first agent today

The free plan includes 3 agents and 100 credits a month. The Telegram card shows up a minute after sign-up.