Manual / User Event Trigger
The human-in-the-loop entry point. Exposes a button or form within the dashboard or external portal to allow direct manual intervention in workflows.
Spec v1.1
User-Driven
Port Overview
No input ports
Entry point node — triggered by direct user interaction.
Manual Trigger
Trigger
Output ports
onExecute
Node Properties
Configuration for the UI element and access control. This trigger allows users to provide input parameters at runtime before the workflow begins.
ManualTrigger
UI & Interface
| Property | Type | Default | Description |
|---|---|---|---|
| buttonLabel | string | "Run Workflow" | The text displayed on the action button in the dashboard. |
| inputSchema | json-schema | null | Defines form fields (text, select, toggle) to be filled by the user before execution. |
| requiredRoles | array[string] | [] | RBAC roles allowed to see and trigger this button. |
Instance Strategy
| Property | Type | Default | Description |
|---|---|---|---|
| correlationExpression | expression | null | A JSONPath or static value to bind this manual action to a specific instance ID. |
| onMatch | enum | MapOrCreate |
MapOrCreate — (Genesis) Creates a new instance if the resolved ID is unknown. Updates if known.MapOrDiscard — (Signal) Only updates existing instances. If no match is found, the signal is dropped.AlwaysCreate — Ignores the resolved ID and spawns a parallel instance (useful for stateless logs).MapOrReplace — Aborts the existing instance and starts a fresh one with the new payload.
|
Hybrid Automation
Manual triggers are often used as "Overdrive" signals to force a workflow into a specific state or to provide missing data that automated triggers could not resolve.
Port Detail
Releases a signal containing both user-provided form data and metadata about the triggering user.
Output ports
onExecute
signal
Fires immediately upon button click/form submission.
// Written to WorkflowContext[nodeId]:
{
"user": { "id": "u_99", "email": "admin@wbskt.io" },
"input": { "reason": "Emergency Shutdown", "override_threshold": 95 }
}
{
"user": { "id": "u_99", "email": "admin@wbskt.io" },
"input": { "reason": "Emergency Shutdown", "override_threshold": 95 }
}