🙋Human-in-the-loop (HITL)

Human-in-the-Loop (HITL) steps

Types of Human-in-the-Loop steps

Relay.app offers four kinds of HITL steps:

  1. Approvals

  2. Data Input

  3. Tasks

  4. Path selection

When any of these steps are encountered during a workflow run, the run will pause and wait until the assignee of the step has completed their task (i.e., given the approval to continue, provided the missing data, etc.).

Human-in-the-Loop steps can be assigned to users in your Relay.app workspace. Assignees can be notified via interactive notifications over Slack or email when their action is needed in a HITL step. Each notification can be accompanied with a custom message with instructions.

Approvals

Approvals are the most basic Human-in-the-Loop step: they ask the assignee for approval to continue the run. When setting up this step, you can include any context (like variables) to aid the assignee in making the decision.

Data Input

Perhaps the most powerful Human-in-the-Loop step is ‘Get data input’. It sends a small “form” to the assignee and asks them to fill it out. You can add as many form inputs as needed, all typed data.

Tasks

The ‘Complete a Task’ step is functionally very similar to the ‘Approval’ step. Instead of waiting for an ‘Approved’ acknowledgement from the assignee, it waits for a ‘Task completed’ acknowledgement. While you might use them in similar situations, the ‘Complete a Task’ step is typically used for situations where the assignee needs to do something “in the real world”, i.e., something that cannot be automated. Examples might be proofreading a document or calling a customer.

Path Selection

The final Human-in-the-Loop step lets you create Paths, but instead of letting rules determine what Path should be taken each run, a human will be notified to explicitly pick a Path every time. This is particularly helpful when more complex decisions are needed from a person. Similar to regular rule-based Paths, you can add as many as you need.

Setting up a HITL step

HITL step parameters

All of the Human-in-the-Loop steps are easy to configure and share the same parameters:

  • A medium to notify the assignee that action is required from them before the workflow run will continue. Assignees can be notified via either Slack or email.

  • The assignee may be:

    • any member of the Relay.app workspace,

    • a dynamic Role (read more about Roles below),

    • or a Slack channel.

  • The message with optional instructions that the assignee will receive with their notification. These instructions may contain references to variable data from other places in the workflow.

  • An optional due date for the action.

  • Optional additional reminders to the assignee, for example, to notify them again three days after the initial notification was sent if they still haven’t acted on it.

  • Optional notifications to the run owner (the Relay.app user that owns the workflow Trigger). For example, you may set up a run owner notification for every HITL notification that’s sent or when HITL actions are overdue.

  • Optional escalation behavior for overdue HITL actions. By default, the step will just continue waiting for the user to act, but it can also be configured to do any of the following after the due date:

    • Skip the HITL action and continue to the next step.

    • End the workflow run right away and not execute steps after this one.

    • Reassign the HITL step to another workspace user.

Slack notifications

Slack notifications for Human-in-the-Loop steps come from the Relay.app Slack bot and are interactive. This means that you can approve runs and even fill in data inputs right from Slack, even when you’re on the go! For example, if the medium of the HITL step is a Slack DM, the user can "Approve" directly within Slack. If the medium is a notification to a Slack Channel, any member of that channel can complete the HITL step.

Last updated