> For the complete documentation index, see [llms.txt](https://docs.1kosmos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.1kosmos.com/workflow-builder/node-library.md).

# Node Library

***

### Node Library Reference

Node libraries provide reusable components that define the behavior and user experience within a workflow. Once a node is added to the canvas, configure it through the Node Editor. While options vary by node type, the overall process is consistent across all libraries.

The Workflow Builder groups nodes into four libraries:

| Library                  | Nodes                                                                                                      |
| ------------------------ | ---------------------------------------------------------------------------------------------------------- |
| User Verification        | Doc Verification, People Search, Selfie Capture, Live ID                                                   |
| Third-Party Verification | AAMVA Verification, Pan Verification, Aadhar Verification, eID Verification                                |
| Authentication           |                                                                                                            |
| Components               | Form, Document Capture Instruction, Selfie Instruction, Switch Device, Success, Failure, Error, Javascript |

### The Node Editor

When a node is selected on the canvas, its Node Editor appears in the right pane. The Node Editor lets administrators configure the selected node's properties, settings, and elements, and its content changes dynamically based on the node type.

Common configurable properties include:

* **Node ID** — A unique identifier for the node within the workflow. It can be referenced by other nodes (for example, in JavaScript nodes for dynamic value substitution).
* **Node-specific settings** — Options that vary by node type. For example, a Form node includes an **On Next** toggle that controls transition behavior; when enabled, a button label is required, and a handler (output connector) appears on the node only after the label is configured.
* **Check Camera Resolution** — When enabled, validates that the device camera meets the minimum required resolution (1080p).

{% hint style="info" %}
Add a **Switch Device** node when **Check Camera Resolution** is enabled, so users on an unsupported device can continue elsewhere.&#x20;
{% endhint %}

#### HTML preview

An HTML Preview panel in the Node Editor helps administrators visualize how configured elements will appear to end users. Whenever an element is added or modified in a supported node, the preview renders the configured content automatically, so administrators can verify layout, text formatting, and element placement without leaving the builder.

The HTML Preview is available for these nodes: **Form**, **Selfie Instructions**, **Switch Device**, **SSN**, **Success**, **Failure**, and **Error**.

{% hint style="info" %}
The HTML Preview panel is available only for nodes that render user interface elements.
{% endhint %}

### User Verification library

The User Interaction library contains nodes that display informational or interactive screens during the journey — guiding users, collecting consent, providing instructions, and displaying outcomes. All of its nodes support adding HTML elements, with rendered output shown in the Node Editor's Preview section.

{% hint style="warning" %}
All **Photo ID**, **Selfie Capture**, and **Live ID** nodes require a Verification Journey to be configured at the workflow level.&#x20;
{% endhint %}

#### Photo ID node

Captures and analyzes identity documents — performing document scanning, OCR (data extraction), and tamper detection.

* **Node ID** — Unique identifier for the node.
* **Render Style** — How the capture interface is displayed: **Full Frame** (full view) or **Next Page** (a separate page in the flow).
* **Check Camera Resolution** — Validates the device camera meets the minimum resolution before document capture.

#### Selfie Capture node

Captures the user's selfie and performs liveness verification, comparing the selfie against the scanned identity document.

* **Node ID** — Unique identifier for the node.
* **Check Camera Resolution** — Validates the device camera meets the minimum resolution before selfie capture.

{% hint style="info" %}
All Selfie Capture configurations (such as liveness settings and comparison behavior) are derived from the selected Verification Journey. The node inherits these settings and requires no separate configuration in the workflow.&#x20;
{% endhint %}

#### Live ID node

Performs live selfie capture and verifies the individual is physically present (anti-spoof detection). It can also remember the user for future authentication, if configured.

* **Node ID** — Unique identifier for the node.
* **Render Style** — How the Live ID interface is displayed (for example, embedded using an iframe).
* **Auth Type** — The authentication mode used during Live ID verification.
* **Secure Wallet Binding** — Securely binds the verified identity to a wallet.
* **Save Captured Selfie** — Stores the captured selfie for future reference or comparison.
* **Numerical Measure of Liveness** — Generates a quantitative liveness score.
* **Comparison Score with Previous Selfie/Document** — Provides a similarity score against previously stored selfie or document data.

#### Associate a Verification Journey

For the Photo ID, Selfie Capture, and Live ID nodes to function, a Verification Journey must be associated at the workflow level. These nodes inherit their verification configurations (document rules, liveness settings, and comparison logic) from the selected journey.

{% stepper %}
{% step %}

#### Open Workflow Settings

In the Workflow Builder, click the three-dot menu (⋯) in the workflow header and select **Workflow Settings**.&#x20;
{% endstep %}

{% step %}

#### Select the journey

In the **Verification Journey Name** dropdown, select the required verification journey.
{% endstep %}

{% step %}

#### Save

Click **Save**. The chosen journey settings apply to the Photo ID, Selfie Capture, and Live ID nodes.
{% endstep %}
{% endstepper %}

### Components library

#### Success node

Displayed at the end of the workflow upon successful verification, confirming completion and providing final messaging.

* **Node ID** — Unique identifier for the node.
* **Title** — Primary success message.
* **Paragraph** — Additional confirmation details or next-step instructions.
* **Add Element** — Adds additional UI elements to customize the success screen.
* **On Next** — Controls the transition; when enabled, a button label is required, after which a handler appears to connect to the next node.

#### Failure node

Informs the user that verification has failed and explains why.

* **Node ID** — Unique identifier for the node.
* **Sub Heading** — Heading message informing the user that verification failed.
* **Paragraph** — Additional information or instructions explaining the failure.
* **Add Element** — Adds additional UI elements (such as text blocks) to customize the screen.
* **Check Camera Resolution** — Validates the device camera meets the minimum resolution; if criteria are not met, configure appropriate handling in the workflow.
* **On Next** — Controls the transition; when enabled, a button label is required, after which a handler appears in the footer to connect to the next node.

#### Error node

Displayed when verification cannot be completed due to an unexpected error, informing the user that verification was not performed and providing next steps.

* **Node ID** — Unique identifier for the node.
* **Sub Heading** — Heading message informing the user that verification was not performed due to an error.
* **Paragraph** — Additional information or instructions (such as retrying the process).
* **Add Element** — Adds additional UI elements to customize the error screen.
* **Check Camera Resolution** — Validates the device camera meets the minimum resolution; if criteria are not met, configure appropriate handling in the workflow.
* **On Next** — Controls the transition; when enabled, a button label is required, after which a handler appears in the footer to connect to the next node.

#### JavaScript node

Executes custom JavaScript logic within a workflow — useful for conditional logic, manipulating values, or referencing outputs from previous nodes.

* **Node ID** — Unique identifier; can be referenced by other nodes or scripts.
* **JS Code** — A code editor for custom JavaScript executed at workflow runtime.
* **Insert Node Reference** — References values from previously executed nodes. Selecting a node from the dropdown inserts the corresponding reference variable, for example `{params.nodes.nodeId.tag}`, enabling dynamic access to values collected earlier in the workflow.
* **Run** — Executes the code in the editor for validation or testing.
* **Clear Output** — Clears any execution results in the output area.

#### Form node

Displays a configurable page that can contain instructions, consent text, checklist items, and input fields, with optional call-to-action (CTA) buttons to move the workflow forward.

To add elements to a Form node, select the node, click **Add Element** in the Node Editor, and choose an element type. Available elements: **Title, Paragraph, Subheading, Unordered List, QR Code, Text, Number, Date, Email, Check box**.

After selecting an element, it is added immediately and its configuration panel opens in the Node Editor. You can configure properties such as labels, input types, validation rules, or display text; add multiple elements to structure the page; and modify element settings at any time before publishing.

#### Selfie Instructions node

Displays instructions before selfie capture, guiding users on positioning, lighting, and readiness prior to liveness verification.

* **Node ID** — Unique identifier for the node.
* **Title** — Primary heading for the instruction screen.
* **Sub Heading** — Additional context or guidance below the title.
* **Paragraph** — Detailed instructions or important information.
* **Check Camera Resolution** — Validates the device camera meets the minimum resolution before proceeding.
* **On Next** — Controls the transition; when enabled, a button label is required, after which a handler appears in the node footer to connect to the next node.

#### Switch Device node

Lets users switch to another device and continue verification without interruption — typically used when a device limitation is detected (such as insufficient camera resolution) or when users prefer a different device.

* **Node ID** — Unique identifier for the node.
* **Title** — Primary heading on the switch-device screen.
* **Sub Heading** — Additional context or instructions.
* **Paragraph** — Detailed instructions on how to switch devices.
* **QR Code** — Displays a QR code users can scan to continue on another device.
* **Add Element** — Adds additional UI elements to customize the screen.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.1kosmos.com/workflow-builder/node-library.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
