HITL Approvals
Pause an ActionFlow until a person approves, rejects, or comments. HITL nodes send the request over chat, email, SMS, or the in-app Approvals inbox.
HITL Approvals
HITL (human in the loop) nodes pause the graph until a reviewer acts. The run waits up to the node's timeout, then continues with the decision payload. The prefix of the graph does not run again.
Category in the catalog: Human in the loop.
Nodes
EN names from the app catalog:
| Node | Slug | How the request is delivered |
|---|---|---|
| Human in the Loop Manual | hitlManual | In-product Approvals |
| Human in the Loop Slack | hitlSlack | Slack |
| Human in the Loop Discord | hitlDiscord | Discord |
| Human in the Loop Teams | hitlTeams | Microsoft Teams |
| Human in the Loop Telegram | hitlTelegram | Telegram |
| Human in the Loop WhatsApp | hitlWhatsApp | |
| Human in the Loop SMS | hitlSMS | SMS |
| Human in the Loop Email | hitlEmail | Platform Resend (no org SMTP) |
| Resend | hitlResend | Named Resend API key |
| SMTP | hitlSmtp | Named SMTP connection |
Typical shared inputs: message, data to review, timeout (minutes, default 60, max 1440), approval type (approve, edit, reject). Channel nodes add a destination (channel, chat id, phone, or email fields). Advanced fields: callback URL and optional callback secret.
Each node registers the pending request and sends the reviewer a signed decision link. ActionFlows receives the result on /api/hitl/callback. You do not implement that callback in your product.
Channel credentials come from named organization connections. Human in the Loop Email uses the platform Resend sender. It does not use Organization → Integrations → SMTP. Use SMTP (hitlSmtp) when the mail must go through your SMTP connection, or Resend (hitlResend) when the mail must go through your Resend API key.
Where reviewers act
Pending work appears in:
- Approvals in the workspace sidebar (
/approvals) - The ActionFlow Approvals tab (
/actionflows/{actionFlowId}/approvals) - Actionflow Studio, when a run is paused on a HITL node
- Slack, Discord, Teams, Telegram, WhatsApp, SMS, or email, depending on the node
A decision queues the continuation run.
When to use it
- A step must not auto-complete (refunds, publishes, access)
- A person should edit data before the next node
- The wait belongs inside the graph
For conversational back-and-forth, use an Action Agent instead of HITL.