Request approval
request_approvalAsk the user a question on their phone and get a tap back — 2 to 4 answer choices (default ["Approve","Deny"]). Use this when you need the user's decision before a consequential or irreversible action and they may be away from this conversation (e.g. confirming a deploy, a destructive operation, or a purchase). Returns immediately with a request_id; poll check_reply with it to get the answer — the user may take minutes to respond.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| choices | No | 2–4 answer labels rendered as buttons. Default ["Approve","Deny"]. Each ≤48 chars (server-enforced). | |
| question | Yes | The question shown on the user's phone. Keep it short and specific; ≤1000 chars (server-enforced). | |
| idempotency_key | No | Optional dedup key. Omit and the server derives one from the content, so duplicate calls don't double-prompt. | |
| expires_in_seconds | No | Seconds until the ask expires (60–86400, server default 600). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| created | Yes | false when an identical ask was already pending (idempotent duplicate) | |
| expires_at | Yes | Unix seconds | |
| request_id | Yes |