Validating Flows
Validate your YAML files before pushing to ServiceNow.
Editor Validation
The Web UI editor validates as you type, showing errors and warnings inline in the Monaco editor with squiggly underlines and problem markers.
You can also click Validate in the editor toolbar to run a full validation pass without a ServiceNow connection.
What Gets Checked
| Check | Description |
|---|---|
| YAML syntax | Valid YAML that parses without errors |
| Schema version | If schema: is set, it must be a known version |
| Required fields | name and steps must be present |
| Type values | type, status, run_as, access are valid enum values |
| Trigger | Required for flows, not allowed for subflows; type must be known |
| Step structure | Each step has exactly one type key; containers have required children |
| Variable names | Must match ^[a-z][a-z0-9_]*$; no duplicates |
| Pill references | $step_id references point to earlier step IDs (no forward refs) |
| Condition operators | If specified, must be a valid SN operator |
| Stages | No duplicate values; step references point to valid top-level steps |
Error Messages
Validation errors include suggestions when possible:
✗ steps[2]: unknown action "lookup_recrod"; did you mean "lookup_record"?
→ Check the action name spelling
✗ trigger.type "record_create" is not a known trigger type
→ Valid types: daily, inbound_email, knowledge_management, ...Validation on Create/Update
Both Create and Update operations run validation automatically before making any API calls. If validation fails, no changes are made to ServiceNow.