{"id":149,"date":"2026-10-17T14:16:04","date_gmt":"2026-10-17T14:16:04","guid":{"rendered":"http:\/\/plugin-docs.com\/?post_type=doc&#038;p=149"},"modified":"2026-10-18T11:38:19","modified_gmt":"2026-10-18T11:38:19","slug":"handle-missing-workflow-data","status":"publish","type":"doc","link":"https:\/\/dragwyb.com\/docs\/handle-missing-workflow-data\/","title":{"rendered":"Handle Missing Workflow Data"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A workflow field may be absent, empty, or contain a value that cannot be compared as expected. Use the <strong>Condition<\/strong> node to check data before a later action depends on it. The node resolves the selected field from the trigger payload and earlier node outputs, then evaluates conditions in their listed order.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Configure a data check<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>In the workflow editor, add or select the <strong>Condition<\/strong> node.<\/li>\n\n\n<li>In the node configuration, add a condition and enter a descriptive <strong>Label<\/strong>.<\/li>\n\n\n<li>Use <strong>Value to check<\/strong> to select or enter the variable path you want to evaluate.<\/li>\n\n\n<li>Choose a <strong>Comparison<\/strong> operator. Operators such as <strong>Exist<\/strong>, <strong>Does not exist<\/strong>, <strong>Is empty<\/strong>, and <strong>Is not empty<\/strong> do not need a comparison value.<\/li>\n\n\n<li>For operators that require it, enter the comparison text in <strong>Compare to<\/strong>.<\/li>\n\n\n<li>Choose the next step in <strong>Then run<\/strong>. Add another condition if needed.<\/li>\n\n<\/ol>\n\n\n\n\n<p class=\"wp-block-paragraph\">Screenshot to add: Condition node configuration with Value to check and Comparison<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Supported comparisons<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Basic operators:<\/strong> Exist; Does not exist; Is empty; Is not empty.<\/li>\n\n\n<li><strong>Text operators:<\/strong> Equal to; Equal to (case insensitive); Not equal to; Not equal to (case insensitive); Contains; Contains (case insensitive); Does not contain; Does not contain (case insensitive); Starts with; Starts with (case insensitive); Ends with; Ends with (case insensitive); Matches regex; Matches regex (case insensitive); Does not match regex; Does not match regex (case insensitive).<\/li>\n\n\n<li><strong>Number operators:<\/strong> Is equal to; Is not equal to; Is greater than; Is less than; Is greater than or equal to; Is less than or equal to.<\/li>\n\n\n<li><strong>Date &amp; time operators:<\/strong> Is equal to; Is not equal to; Is after; Is before; Is after or equal to; Is before or equal to.<\/li>\n\n\n<li><strong>Boolean operators:<\/strong> Is true; Is false; Is equal to; Is not equal to.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">How missing and empty values behave<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The condition evaluator treats a resolved <code>null<\/code>, Boolean <code>false<\/code>, or an empty scalar string as having no value for the basic existence checks. Numeric zero is converted to the text <code>0<\/code>, so it is not treated as an empty string. Non-scalar values are not converted to a readable text value for ordinary text comparisons.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Numeric comparisons return false when either side cannot be parsed as a number. Date comparisons return false when a date cannot be parsed. Boolean checks recognize Boolean values, numbers, and common text values such as <code>true<\/code>, <code>false<\/code>, <code>yes<\/code>, <code>no<\/code>, <code>on<\/code>, and <code>off<\/code>; an unrecognized Boolean value does not produce a successful Boolean comparison.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Do not assume the node inserts a default value or skips an action automatically. Configure a matching branch and, when appropriate, a <strong>No Condition Matched<\/strong> target. See <a href=\"https:\/\/dragwyb.com\/docs\/docs\/ai-agent-workflows-by-dragwyb\/configure-workflow-fallback-paths\/\">Configure Workflow Fallback Paths<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Test both outcomes<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>Use a test payload with the field present and a value that should match.<\/li>\n\n\n<li>Run the workflow using the editor&#8217;s available test or run control, and check which connected step executes.<\/li>\n\n\n<li>Repeat with the field omitted or empty, as appropriate for the trigger payload.<\/li>\n\n\n<li>Check the node output and run log to confirm the condition result. Do not treat a non-matching condition as a node error.<\/li>\n\n<\/ol>\n\n\n\n\n<p class=\"wp-block-paragraph\">Screenshot to add: Workflow run showing the Condition result and selected branch<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Check for missing values before later workflow steps use them.<\/p>\n","protected":false},"author":0,"featured_media":0,"parent":148,"menu_order":0,"template":"","class_list":["post-149","doc","type-doc","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/doc\/149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/doc"}],"about":[{"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/types\/doc"}],"version-history":[{"count":3,"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/doc\/149\/revisions"}],"predecessor-version":[{"id":883,"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/doc\/149\/revisions\/883"}],"up":[{"embeddable":true,"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/doc\/148"}],"wp:attachment":[{"href":"https:\/\/dragwyb.com\/docs\/wp-json\/wp\/v2\/media?parent=149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}