A schema that is used to validate a part of Laboperator workflow templates.
A substep is a single instruction of a step and can both content and actions attached to it.
string (Primary Instruction) <= 200 characters
The primary line of instructions. Field values can be embedded by enclosing a field identifier in double curly braces.
string (Secondary Instruction) <= 100 characters
The secondary line of instructions.
reference (Description)Markdown Formatted Content
The description fields can be used to add details to the substep. As it supports markdown, you can use basic formatting, links, tables and even images.
boolean (Initially expand the description?)
A flag to indicate whether or not to show the entire description for this substep right away.
The default is
Not expanding the description by default keeps your workflow interface clean and the user can get a good overview of the substeps, while an expanded descriptoin will make sure an important notes or images you might have put in the description will be shown.
boolean (Show manual confirmation button?)
Display a manual confirmation button to complete the substep.
array of reference (Substep Inputs)Member Name
A list of fields to show inputs for on the substep. For each field the substep will display an appropriate input component.
Use the title and description properties of the field schema to control the label and help text of an input.
array of reference (Substep Buttons)Button
A list of buttons on the substep.
array of reference or reference (Substep Devices)
A list of fields to display as devices on the substep. For each device the substep will display general information, status and activities such as invoked commands.
The identifier of a field that is a device or channel relation.
array of reference (Substep Data Elements)Element Schema
Data elements allow to render data from device channels on the substep.
reference or reference (Substep Timer)
A timer to display on the substep. The timer can be started using displayed buttons or using actions. With no default_duration given or duration set to 00:00 it can be used as a stop watch.
For full flexibility the timer can either implicitly define a field and
behaviors to handle the manual buttons or you can a define timer field
Behaviors to handle the buttons on the timer are automatically created
for you. To skip creation of these behaviors, pass the
Behaviors provide means to define the behavior of a step. They can be used
to control devices, record results, wait for device responses, control flow
within a step and much more. The general scheme of a behavior is
The schema of a selector. The options defined will be available for selection in the substep during a workflow run. A selector can be customized with different layouts, currently list or cards. They support both multi- and single-selection. By overwriting the default behaviors they can be completely customized.