Configure Workflows schemas

Raven
Raven
  • Updated

Benchling Workflows is a process management tool that integrates with lab automation and internal systems. With Workflows, you can standardize your organization's processes, track tasks, and ensure consistent execution across teams.

Configuring workflows in Benchling involves defining the structure and behavior of tasks and their execution paths. This includes setting up task schemas, execution templates, flowcharts, and integrating registration tables and lookup fields to streamline data entry and task progression.

 

How are Workflows structured? 

In Workflows, Tasks represent the jobs to-be-done in a workflow, such as a series of assays that should be done in a particular order. Each Task has standard operational properties and custom fields that represent the parameters required to do the job; these are defined by Task schemas that are configured by an admin. Sets of the same type of tasks that were created together are called task groups and represent a set of jobs that are done together. 

Before you configure a Workflow schema, you have to make a few decisions on schema attributes, like execution type, status lifecycle, and execution template. 

 

About execution types

You can set a Workflow schema to be executed in one of three ways:

  1. Direct - tasks are marked complete directly or through the API
    • You should consider using this type of execution if the fulfiller needs to provide or add details that can be input in a table without the need for additional context or experimentation
  2. Entry - in order to create or execute a task, the end-user creates a Notebook entry
    • You should consider using this type of execution if the fulfiller needs the additional context of experimental details or information that might live outside of the task table
  3. Flowchart - execution of a series of ordered tasks encompassing a complete process
    • You should consider using this type of execution if your fulfillers are completing a series of ordered tasks, a set of tasks with multiple routes, or if you need to apply conditional or other logic for task completion

The execution type selected will impact other configuration options of the schema. For example, If you select an Entry execution type, you must also create an execution template. On the other hand, if you select a Flowchart execution type, you can designate watchers who will be informed when all Tasks have been completed. Choosing the right execution type ensures your workflow aligns with your team's actual processes, while still benefiting from traceability and structure.

 

About status lifecycle 

The options for status lifecycle are dependent on the execution type selection made.

  • Direct execution type - direct completion
  • Entry execution type
    • Entry - the next Task is created as soon as a fulfiller marks the previous task as "Complete"
    • Entry review - the next Task will not be completed until the previous Task is marked as "Complete" and the execution Entry of the previous Task has been accepted through the entry review process
  • Flowchart execution type
    • Flowchart

 

About execution templates

This is only required when you have set the execution type as Entry. When you click the Configure button, you are given the option to:

  • Create a blank template
  • Duplicate an existing template

For either option, you will designate what template collection it will live in and the name of the template. 

Execution templates have Task and Output tables, the table below lists the columns included in each table. 

Table type Included columns
Task Task
Status
Assignee
Scheduled on
Custom fields in the Task fields section of the Workflows schema
Output Output
Task
Custom fields in the Output fields section of the Workflows schema

Additionally, you may want to consider editing the default execution template so that it includes any required structured data tables like Registration tables, Inventory tables, or Result tables. This is because Output tables identify what information needs to be passed along to the next request, they do not replace other structured tables. For more information on ways that you can configure a template, see the linked article. 

 

Create Task schemas

Workflow schemas are called Task schemas and are configured from the Feature Settings menu by organization admins for use in a single organization of the tenant using a point-and-click interface. Task schemas define the structure of tasks within a workflow, including inputs, outputs, and execution types. Task schemas have two main parts, namely the task(s) and output(s). 

 

Configure Entry and direct execution Tasks

The first part of creating a Task schema is configuring the task section. Task configuration is similar to Registry schema configuration— each Task schema is designated a task group prefix, a name, and an organization that manages the permissions. In this example we will define the execution type as Entry, but the steps remain similar for direct executed Workflows as well excepting the execution template settings. 

Task schema attributes (entry execution).gif
  1. From the task creation menu, click the Create button to create a new Task schema
  2. Start by defining the required attributes of the schema including Task group prefix, name, owner, ID prefix, execution type, and status lifecycle
  3. Define the execution template by clicking on the Configure button in the Task section of the schema creation page
    • This will bring you to a modal that allows you to define: name, prefix, folder, create new or duplicate existing template, template name, and template collection
  4. Once you have defined all of these, click Create to finish creating the execution template
    • Once you’ve configured the execution template, a checkbox will appear under it. Check this box so that after you create the Task schema the execution template will be created and published to your template collection
  5. Create input fields by clicking the + icon or the Add field button and provide a name and definition of the field
  6. Optionally create an Output. The only requirement for configuring an Output is entering an ID prefix for the output. You may also add Output fields by clicking the + icon or the Add field button and provide a name and definition of the field

    Workflows input and output fields.gif
  7. Once you have filled everything out click Create to generate your Task schema

Once the Workflow schema is created, the execution template will become clickable, when you click the link it will take you to the template itself. By default an execution template has a Tasks table and an Outputs table (if you configured one in the schema) that cannot be deleted. You can edit the template and add additional instructions if needed. 

Note: this is only applicable for Task schemas designated as Entry execution types. Direct and Flowchart execution types will not generate an execution template. 

 

Configure Task field lookups

Task lookups allow you to connect Outputs from one task to inputs of another, enabling dynamic data transfer across workflow stages. This helps prevent data entry errors and allows tasks to be context-aware based on prior results.

Configure lookups workflows.gif
  1. Under Output –> Task Lookup, click Configure
  2. This will open a configure lookup modal, use the Start From dropdown to select the output field to start the lookup
  3. Click Add Lookup Step to define relationships
  4. Select the object property and match it to the task field
  5. Click Done to save

 

Configure Flowcharts

Configuring a flowchart schema involves a few additional steps not required for other task types. This includes: 

  • Defining all Task schemas that you might use in the flowchart
  • Defining Task transitions which maps how Tasks relate to each other
  • Creating a template Flowchart that serves as the default path data will traverse any time the Flowchart is executed

These extra steps help ensure your workflows accurately reflect complex real-world processes. Flowchart schemas are best suited for workflows where task order, conditional logic, and data routing are critical—for example, multi-stage assay pipelines or manufacturing processes.

 

Configure Flowchart schemas 

  1. From the task creation menu, click the Create button to create a new Task schema
  2. Start by defining the required attributes of the schema including Task group prefix, name, owner, ID prefix, execution type (Flowchart), and status lifecycle
  3. Create input fields by clicking the + icon or the Add field button and provide a name and definition of the field
  4. Optionally create an Output. The only requirement for configuring an Output is entering an ID prefix for the output. You may also add Output fields by clicking the + icon or the Add field button and provide a name and definition of the field
  5. Once you have filled everything out click Create to generate your Task schema

 

Configure Tasks, Transitions, and Flowchart templates 

After you finish creating the Task schema, the Flowchart configuration section is unlocked and you can define Task schema, Transitions, and the template Flowchart.

Flowchart Task Schemas.gif
  1. Update the Flowchart configurations by clicking Edit on the table header and navigating the the Task schemas tab
  2. In the Task schemas tab, click Add task schemas which will populate a dropdown that you can use to search for a Task schema you’d like to make available for use in the template Flowchart
  3. Repeat this step until you have added all necessary Task schemas, then click into the Transitions tab

    Configuring Task Transitions.gif
     
  4. Click Add transition and use the dropdowns to select the transitions you’d like to add by mapping a source Task to a target Task
  5. Then in the configure column, click Configure to define the lookups of the mapping
  6. Repeat these steps until you have mapped all transitions you’d like to use in your Flowchart, then click Submit
  7. Optionally, click Edit on the table header and navigate to the Template Flowchart tab to create a pre-defined Flowchart that your team can use
  8. Click Open flowchart editor to access the drag and drop canvas. The Workflow task and outputs will automatically populate on the canvas, you will then drag any Task schemas you want to use as nodes into the canvas
  9. Connect the nodes to the Workflow task and output as desired, then click Save to save the template and exit the canvas
  10. Click Submit on the Flowchart configuration to save changes to the overall Flowchart
Template Flowchart Configuration.gif

Note: be sure to configure all allowable transitions since you cannot define new transitions after creating a Flowchart and users will not be able to connect Task schemas without defined transitions.

 

Configure logic in Flowcharts

Once your task schemas are connected in a flowchart, you can introduce logic using routers which can also have loops, AND/OR logic, and end nodes. These elements help route tasks dynamically based on data conditions and control how workflows progress or repeat.

 

Create Routers

Routers define custom logic and control mappings for inputs and outputs, enabling dynamic workflow paths. You can add a router to your Flowchart after you’ve completed the Task schema and Transitions tabs of your Flowchart configuration. Routers are best suited to support the following Flowchart use-cases: 

  • Core variants: when a Flowchart is configured to have several discrete paths that users select based on specific criteria, such as sample type or sequencing method
  • Assay panels: when a requester has a set of samples that need to undergo a series of analytical tests, and each sample may require a different subset of tests  

If you have already configured a Flowchart Template, you will want to delete the edges (connections between schemas and nodes) in order to add the Router. 

Router configuration is a two part process: 

  • Adding the Router and creating connections
  • Mapping the conditions in the Router

To configure a Router: 

Router Configuration.gif
  1. Enter the Flowchart editor, and if you haven’t already, drag and drop the Task schemas from the right-side panel onto the canvas in the approximate flow of your work
  2. Drag and drop the diamond-shaped router from the right side panel onto the canvas
  3. Create a connection between one source node and at least two destination nodes by dragging a line to or from the Router
  4. Once you’ve connected the router to the relevant tasks, click on the edit icon to open the router configuration window
  5. Fill out the following information about the router:
    • The field to be mapped
    • Operator conditions for multi-select and dropdown fields
    • Lookup value(s), like dropdown options from a mapped field
    • Routing path or target task
  6. Create rules for all target tasks and appropriate operator and value based on lookup(s)
  7. Click Save to submit the changes to the Router
  8. Then click Submit on the Flowchart configuration to save changes to the overall Flowchart 

Router configurations must meet the following criteria: 

  • Only one incoming edge
  • At least two outgoing edges
  • There is a corresponding schema mapper for each edge between two task nodes
  • Routers are not connected to another router
  • A single outgoing edge cannot have more than one rule applied 

If these conditions are not met, you will see error message(s) on your router, or you will not be able to open the router configuration window. 

 

ANDs/ORs and condition group logic  

In routers, you can use AND/OR logic that allows you to configure routing rules based on multiple schema fields or more than one condition per rule. 

  • OR conditions: route to as specific node when any of the configured conditions are met
  • AND conditions: route to a specific node when all of the configured conditions are met 

You can also use condition groups to configure nesting for your conditions. To configure ANDs/ORs logic in a Router: 

  1. In the Flowchart editor, if you haven’t already, drag and drop tasks and router(s) from the right side panel onto the canvas
  2. Enter the router’s configuration window by clicking the edit icon
  3. Click the add condition button and choose to add condition or to add condition group from the dropdown
  4. Use the dropdown in the When (blank) condition statement to set the logic as AND or OR
    • All of sets the logic as an AND statement
    • Any of sets the logic as an OR statement
  5. Define the route by using the when dropdown to choose the logic for your Router
  6. Further define the mappings for all conditions

To configure a condition group, you would select Add condition group after clicking the Add condition button. You’d proceed to configure the condition group in much the same way conditions are configured.  

Example: 

Route tasks to rework if:

  • (Concentration < 90%) AND (Purity < 95%)

Or to final review if:

  • (Status = Complete) OR (Review flag = True)

     

Looping logic 

Looping logic automates any of these redo decisions for experiments that fail or don’t pass quality control checks by automatically returning tasks to the previous step, saving your team time by minimizing repetitive manual tasks.

Adding a loop means using a Router, but instead of that Router only going to new tasks, one of the edges of the Router will loop back to the input task. 

configure looping logic workflows.gif

To add a loop: 

  1. In the Flowchart editor, if you haven’t already, drag and drop Tasks and Router(s) from the right side panel onto the canvas
  2. Open the Router node’s configuration window to set up rules for each connected edge, including adding a loop as the final step in the Router configuration
  3. Click Save to submit changes to the template Flowchart
  4. Click Submit in the Flowchart configuration window 

Flowcharts can only support the configuration of loops with one starting point. An error message will display if you attempt to create a loop with multiple entry points. For Flowcharts that require loops with multiple entry points, we recommend creating new instances of the task nodes in the loop. 

 

End nodes 

End nodes can be used to stop a Workflow when conditional logic criteria is met and the process should be ended. 

Configure end nodes workflows .gif

To add an end node in a Flowchart: 

  1. In the Flowchart editor, if you haven’t already, drag and drop Tasks and Router(s) from the right side panel onto the canvas
  2. Drag and drop the node from the right-side panel onto the canvas
  3. Connect the end node to a router
  4. Configure the router so that it routes to the end node, then click Save to save the Flowchart template
  5. Click Submit in the Flowchart configuration window 

Note: end nodes can only be configured to connect to one router node. 

 

Flowchart API overview

Benchling provides API endpoints to programmatically interact with workflow flowcharts, enabling automation and integration with external systems.

For detailed API documentation, refer to the Benchling API Reference.

 

Permissions and access

Permissions determine who can create, edit, and execute Workflows and Tasks in Benchling. Access is typically tied to project roles and workspace settings. Permissions are summarized in the table below. 

  Viewer Editor Admin
View Task groups
Create or edit Task groups
Create or edit Task schemas
Execute Tasks
Modify watchers

Only Admins can configure task schemas. Editors can manage task groups and execute tasks. Viewers have read-only access to workflows.

 

Frequently asked questions

Q: Can I edit a task schema after tasks have been created?

A: Yes, but changes will only apply to new tasks created after the schema is updated. Existing tasks that were already created from the schema will continue to follow the original version. If you need those tasks to follow new fields or logic, you'll need to manually update them or create a new task group using the updated schema.. Existing tasks will retain the original schema configuration.

Q: How do I delete an execution template?

A: Execution templates cannot be deleted once created. However, you can edit them after the workflow schema is created.

Q: Can I have multiple routers in a flowchart?

A: Yes, but routers should not be connected to other routers. Each router must have a single incoming edge and at least two outgoing edges.

Q: What happens if a task in a flowchart fails?

A: If a task fails, its progress through the flowchart is halted, and no data is mapped downstream. You can configure loops to retry tasks based on specific conditions.

Q: Are there limitations to using lookup fields?

A: Lookup fields can pull data from input samples, registry fields, or results fields. Ensure that the correct schema is specified, and refresh the result table after copying or pasting lookup fields.

Q: What do I do if I see an error that “every edge off this router node must have an associated rule configured”? 

A: This error can arise if the transitions that pass through the router do not use the same source. For example, you will see this error if one transition that passes through the router maps from the Task and another transition that passes through the router maps from the Output. To correct this error, please ensure that both transitions map from the Task or Output. Once you ensure that the transitions used in the router use the same source, save the changes by clicking submit. 

Was this article helpful?

Have more questions? Submit a request