Skip to content

Ask a person

Step · Stable

Pause execution and ask a human actor for input. response_type: text (default), int, float, bool, choice, acknowledge, date, time, datetime, image, pdf, file. File types require channel: inline. Set auto_approve to resolve unattended without waiting.

Halts the run and presents a form to the assigned actor. response_type controls the input widget: text (default), int, float, bool, choice, acknowledge, date, time, datetime, image, pdf, file. The temporal types render native pickers and store a canonical ISO string — date → YYYY-MM-DD (date-only), time → HH:MM:SS, datetime → YYYY-MM-DDTHH:MM:SS. File response types (image, pdf, file) require channel: inline. The actor’s answer is exposed as {{

Fire-and-continue (fire_and_continue: true): the ask dispatches its question and the run KEEPS RUNNING instead of pausing. Use this to fan out parallel asks — e.g. ask two managers at the same time, then join their responses at a downstream Checkpoint (Wait with conditions and policy: all). Each parallel ask needs a label; the Checkpoint adds one signal condition per ask with from_step: . Requires channel: notification or channel: whatsapp (inline has no surface to render an off-canvas question). The save gate refuses any fire-and-continue ask that lacks a label, uses channel=inline, or has no downstream Checkpoint reading it. Orthogonal to auto_approve.

Use whenever a human decision, approval, or data entry must gate the flow — review an extracted field, approve an amount, upload evidence. The actor’s response flows downstream as {{

If no human needs to be in the loop and you just want to delay, use Wait. If you need to pause on multiple independent conditions (not a single question), use Checkpoint. For a fully automated response, set auto_approve: true rather than removing the step.

choice · optional

Role or actor id whose response gates this step.

string · required

choice · optional · one of text, int, float, bool, choice, acknowledge, date, time, datetime, image, pdf, file

list · optional

Used only when response type is “choice”.

choice · optional · one of inline, notification, whatsapp, slack

int · optional

bool · optional

Resolve automatically without waiting — for unattended runs and testing. The answer below is recorded as if an actor had responded.

string · optional

Answer to record when auto-approving. Defaults: Yes for yes/no, the first option for choice, acknowledged for acknowledge. Required for other response types.

bool · optional

Dispatch the ask and continue running instead of pausing. A downstream Checkpoint must wait for this ask’s response via from_step.

  • response

Auto-generated from the skill registry (load_skills()). Do not edit by hand.