Request explicit human approval (blocks)
request_approvalRequests a human's explicit approval for an action, blocking until they decide or timeout. Returns allow only on explicit approval, otherwise denies to safely gate high-stakes operations.
Instructions
Request a human's explicit approval for an action and BLOCK until they decide or the timeout elapses. Use for high-stakes actions, or whenever check_action returned "ask". The owner gets an Approve/Deny prompt on Telegram. Returns "allow" ONLY if a human tapped Approve. Returns "deny" on tap-deny, on timeout (fail-closed), or when interactive approvals are unavailable (owner not on Pro, or Telegram not linked — see upgrade_required / telegram_linked). NEVER treat a non-"allow" result as permission.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The specific action requiring approval, e.g. "send_email", "transfer_funds". | |
| category | Yes | Action category. Built-in categories: email, social_post, message, file_write, file_delete, api_call, spending, calendar, system, custom. Any short label (<=50 chars) is accepted. | |
| metadata | No | Structured details shown to the human in the approval prompt (e.g. recipient, amount, summary). Max 10KB. | |
| wait_seconds | No | How long to block waiting for the human's tap (1-120s). On timeout the result fails closed to "deny". |