Create a new Screen Flow in Flow Builder and add a Screen element with input components (text fields, picklists, lookups) bound to flow variables
Add navigation rules using Decision elements between screens to branch to different screens based on user input
Include a Create Records or Update Records element after the final screen to persist data, passing screen-collected variable values as field inputs
Add a Fault element connected from each DML element; route the fault path to a Screen element that displays the {!$Flow.FaultMessage} variable to the user
Configure the flow's start to accept input variables if it will be launched from a Lightning record page via a Flow component, passing record context in automatically
Test in the Flow debugger using manual input mode, stepping through each screen and triggering the fault path by temporarily setting an invalid field value
Known gotchas
Screen Flows cannot run in the background; they require an active user session and will error if invoked from an API context or as a scheduled job without a running user
Component validation in a Screen element only fires when the user clicks Next — pre-existing invalid values imported from input variables bypass component-level validation rules
The {!$Flow.FaultMessage} variable is populated only when an element explicitly connects to a Fault connector; uncaught faults surface as generic error screens to the user
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp