Add workflow
Adds a new workflow configuration to the Tenant.
Adds a new workflow configuration to the Tenant.
Authorization
M2MBearerToken AuthorizationBearer <token>
M2M Token for authentication
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.loginradius.com/v2/manage/workflows" \ -H "Content-Type: application/json" \ -d '{ "Name": "mfa-auth", "ThemeName": "default", "Data": { "edges": [ { "id": "reactflow__edge-6799ebff-ab72-4ebd-869b-65672bd0a799true-SuccessFinalNode", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "6799ebff-ab72-4ebd-869b-65672bd0a799", "sourceHandle": "true", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "SuccessFinalNode", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-6799ebff-ab72-4ebd-869b-65672bd0a799false-FailureFinalNode", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "6799ebff-ab72-4ebd-869b-65672bd0a799", "sourceHandle": "false", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "FailureFinalNode", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913false-1eb72cc9-7a2c-44f7-817d-00a94a9c1a24", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "sourceHandle": "false", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-1eb72cc9-7a2c-44f7-817d-00a94a9c1a24authenticator-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24", "sourceHandle": "authenticator", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8bfalse-FailureFinalNode", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "sourceHandle": "false", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "FailureFinalNode", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-initialNodeoutput-dd8723a2-afc1-4529-a0a6-2c0712af3e65", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "initialNode", "sourceHandle": "output", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-dd8723a2-afc1-4529-a0a6-2c0712af3e65output-b92fb05a-578a-4097-aec0-2df33b4c27a0", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "sourceHandle": "output", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "b92fb05a-578a-4097-aec0-2df33b4c27a0", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-b92fb05a-578a-4097-aec0-2df33b4c27a0true-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "b92fb05a-578a-4097-aec0-2df33b4c27a0", "sourceHandle": "true", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-b92fb05a-578a-4097-aec0-2df33b4c27a0false-FailureFinalNode", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "b92fb05a-578a-4097-aec0-2df33b4c27a0", "sourceHandle": "false", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "FailureFinalNode", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8btrue-4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "sourceHandle": "true", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913authenticator-4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "sourceHandle": "authenticator", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "targetHandle": null, "type": "smoothstep" }, { "id": "reactflow__edge-4fd9fc82-5cc5-4410-94c7-cc8ac301a31eoutput-6799ebff-ab72-4ebd-869b-65672bd0a799", "markerEnd": { "color": "#30b3ff", "type": "arrowclosed" }, "selected": "false", "source": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "sourceHandle": "output", "style": { "stroke": "#30b3ff", "strokeWidth": "1" }, "target": "6799ebff-ab72-4ebd-869b-65672bd0a799", "targetHandle": null, "type": "smoothstep" } ], "innerNodes": { "46d6674e-bbc6-44bc-951f-98cffd6441b6": { "data": { "description": "Displays the option to field to enter TOTP (when Authenticator is already configured).", "label": "Authenticator Input", "properties": null }, "dragging": "false", "extent": "parent", "height": "50", "hidden": "true", "id": "46d6674e-bbc6-44bc-951f-98cffd6441b6", "isChildNode": "true", "nodes": null, "parentNode": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "position": { "x": "290.33256209500405", "y": "-206.97348008280136" }, "positionAbsolute": { "x": "290.33256209500405", "y": "-206.97348008280136" }, "selected": "false", "type": "authenticatorinput", "width": "150" }, "a655db76-8831-411b-82f5-1be2784e4a78": { "data": { "description": "Prompts the user to enter the email and stores the input. It is used with the Web Page node.", "label": "Email", "properties": [ { "elementType": "emailonlyasinput", "id": "1", "label": "Email Only as Input", "type": "checkbox", "value": "false" }, { "elementType": "isprimary", "id": "2", "label": "Is Primary", "primaryParentId": "1", "type": "checkbox", "value": "true" }, { "elementType": "emailtype", "id": "3", "label": "Email Type", "primaryParentId": "1", "secondaryParentId": "2", "type": "text", "value": "" }, { "elementType": "rules", "id": "4", "label": "Validation String", "primaryParentId": "1", "type": "text", "value": "" } ] }, "draggable": "true", "dragging": "false", "extent": "parent", "height": "50", "hidden": "true", "id": "a655db76-8831-411b-82f5-1be2784e4a78", "isChildNode": "true", "nodes": null, "parentNode": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "position": { "x": "-499.8966093003752", "y": "-455.39881839572" }, "positionAbsolute": { "x": "-499.8966093003752", "y": "-455.39881839572" }, "selected": "false", "type": "email", "width": "150" }, "fff21a66-437c-4a8a-96e0-744efaff8d87": { "data": { "description": "Prompts the user to enter their password and stores the input. This node is to be used for entering the password during registration, login, password update and password forget etc. It is used with the Web Page node.", "label": "Password", "properties": [ { "elementType": "passwordonlyasinput", "id": "1", "label": "Password Only as Input", "tag": "password", "type": "checkbox", "value": "false" }, { "elementType": "oldpassword", "id": "2", "label": "Old Password", "primaryParentId": "1", "tag": "password", "type": "checkbox", "value": "false" }, { "elementType": "newpassword", "id": "3", "label": "New Password", "primaryParentId": "1", "tag": "password", "type": "checkbox", "value": "false" }, { "elementType": "confirmpassword", "id": "4", "label": "Confirm Password", "primaryParentId": "1", "tag": "password", "type": "checkbox", "value": "false" }, { "elementType": "validatepassword", "id": "5", "label": "Validate Password", "primaryParentId": "1", "tag": "policy", "type": "checkbox", "value": "false" } ] }, "draggable": "true", "dragging": "false", "extent": "parent", "height": "50", "hidden": "true", "id": "fff21a66-437c-4a8a-96e0-744efaff8d87", "isChildNode": "true", "nodes": null, "parentNode": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "position": { "x": "-480.96896447653376", "y": "-480.2413522270118" }, "positionAbsolute": { "x": "-480.96896447653376", "y": "-480.2413522270118" }, "selected": "false", "type": "password", "width": "150" } }, "nodes": { "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24": { "data": { "description": "Define the MFA flow (mandatory or optional), settings and method(s) for all users. To let users register/configure the MFA method from the available method(s) on login. ", "label": "Configure MFA", "properties": [ { "elementType": "mfaflow", "id": "1", "label": "MFA Flow", "options": [ { "text": "Mandatory", "value": "Mandatory" }, { "text": "Optional", "value": "Optional" } ], "required": "true", "type": "select", "value": "Mandatory" }, { "elementType": "message", "id": "2", "label": "Message", "required": "true", "type": "text", "value": "Authenticator" }, { "elementType": "mfamethods", "id": "3", "label": "MFA Methods", "options": [ { "checked": "false", "text": "Authenticator", "value": "Authenticator" }, { "checked": "false", "text": "Security Question", "value": "Security Question" }, { "checked": "false", "text": "Email OTP", "value": "Email OTP" }, { "checked": "false", "text": "SMS OTP", "value": "SMS OTP" } ], "outputSelector": "true", "required": "true", "type": "multiselect", "value": [ "Authenticator" ] }, { "elementType": "authenticatorbuttontext", "id": "4", "label": "Authenticator Button Text", "parentPropertyId": "3", "parentPropertyValue": "Authenticator", "required": "true", "type": "text", "value": "Configure Authenticator" }, { "elementType": "securityquestionbuttontext", "id": "5", "label": "Security Question Button Text", "parentPropertyId": "3", "parentPropertyValue": "Security Question", "required": "true", "type": "text", "value": "" }, { "elementType": "emailotpbuttontext", "id": "6", "label": "Email OTP Button Text", "parentPropertyId": "3", "parentPropertyValue": "Email OTP", "required": "true", "type": "text", "value": "" }, { "elementType": "smsotpbuttontext", "id": "7", "label": "SMS OTP Button Text", "parentPropertyId": "3", "parentPropertyValue": "SMS OTP", "required": "true", "type": "text", "value": "" } ] }, "dragging": "false", "height": "130", "id": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24", "nodes": null, "output": [ { "displayName": "EmailOTP", "id": "emailotp" }, { "displayName": "SMSOTP", "id": "smsotp" }, { "displayName": "Authenticator", "id": "authenticator" }, { "displayName": "SecurityQuestion", "id": "securityquestion" }, { "displayName": "Skip", "id": "skip" }, { "displayName": "False", "id": "false" } ], "position": { "x": "-189.86368278693385", "y": "-453.57986075944297" }, "positionAbsolute": { "x": "-189.86368278693385", "y": "-453.57986075944297" }, "selected": "false", "type": "configuremfa", "width": "164" }, "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e": { "data": { "description": "Combines multiple nodes that request input into a single page for display to the user. Drag and drop nodes onto the web page node to combine them.", "label": "Web Page", "properties": [ { "elementType": "title", "id": "1", "label": "Web Page Header", "required": "true", "type": "text", "value": "Authenticator Code" }, { "elementType": "description", "id": "2", "label": "Web Page Description", "required": "true", "type": "text", "value": "Enter the Authenticator Code" }, { "elementType": "buttontext", "id": "3", "label": "Submit Button Text", "required": "true", "type": "text", "value": "Verify" }, { "elementType": "footer", "id": "4", "label": "Web Page Footer", "required": "true", "type": "text", "value": "LoginRadius" }, { "elementType": "buttons", "id": "5", "label": "Buttons", "type": "buttons", "value": null } ] }, "dragging": "false", "height": "114", "id": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "nodes": [ { "data": { "label": "Authenticator Input" }, "id": "46d6674e-bbc6-44bc-951f-98cffd6441b6", "isChildNode": "true", "type": "authenticatorinput" } ], "output": [ { "displayName": "output", "id": "output" } ], "position": { "x": "276.136828477123", "y": "-237.73090292154373" }, "positionAbsolute": { "x": "276.136828477123", "y": "-237.73090292154373" }, "selected": "false", "type": "webpage", "width": "230" }, "6799ebff-ab72-4ebd-869b-65672bd0a799": { "data": { "description": "Verifies if the entered TOTP for authenticator is valid or not.", "label": "Verify Authenticator", "properties": null }, "dragging": "false", "height": "90", "id": "6799ebff-ab72-4ebd-869b-65672bd0a799", "nodes": null, "output": [ { "displayName": "True", "id": "true" }, { "displayName": "False", "id": "false" } ], "position": { "x": "616.5127762283203", "y": "-370.34395454050144" }, "positionAbsolute": { "x": "616.5127762283203", "y": "-370.34395454050144" }, "selected": "false", "type": "verifyauthenticatortotp", "width": "164" }, "FailureFinalNode": { "data": { "description": "Denotes that the workflow ended at failure. ", "label": "Failure", "properties": [ { "id": "1", "label": "Redirect URL", "type": "text", "value": "" } ] }, "dragging": "false", "height": "40", "id": "FailureFinalNode", "nodes": null, "position": { "x": "868.1393360508125", "y": "-6.556228920048781" }, "positionAbsolute": { "x": "868.1393360508125", "y": "-6.556228920048781" }, "selected": "false", "type": "finalNegative", "width": "40" }, "SuccessFinalNode": { "data": { "description": "Denotes that the workflow ended in success. ", "label": "Success", "properties": [ { "id": "1", "label": "Redirect URL", "type": "text", "value": "" } ] }, "dragging": "false", "height": "40", "id": "SuccessFinalNode", "nodes": null, "position": { "x": "870.7506472583059", "y": "-346.426228223721" }, "positionAbsolute": { "x": "870.7506472583059", "y": "-346.426228223721" }, "selected": "false", "type": "finalPositive", "width": "40" }, "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b": { "data": { "description": "To configure the Authenticator method while setting up MFA. Businesses can also customize the labels and descriptions that will be displayed on the Authenticator screen.", "label": "Configure Authenticator", "properties": [ { "elementType": "issuerid", "id": "1", "label": "Issuer ID", "required": "true", "type": "text", "value": "LR" }, { "elementType": "qrcodewidth", "id": "2", "label": "QR Code Width", "required": "true", "type": "text", "value": "200" }, { "elementType": "qrcodeheight", "id": "3", "label": "QR Code Height", "required": "true", "type": "text", "value": "200" }, { "elementType": "displaygetapp", "id": "4", "label": "Display Get App", "type": "checkbox", "value": "false" }, { "elementType": "getapptext", "id": "5", "label": "Get App Text", "parentPropertyId": "4", "parentPropertyValue": "true", "required": "true", "type": "text", "value": "" }, { "elementType": "getapplink", "id": "6", "label": "Get App Link", "parentPropertyId": "4", "parentPropertyValue": "true", "required": "true", "type": "text", "value": "" }, { "elementType": "googleauthenticatorlabel", "id": "7", "label": "Authenticator label", "required": "true", "type": "text", "value": "Configure Authenticator" }, { "elementType": "googleauthenticatordescription", "id": "8", "label": "Authenticator Description", "required": "true", "type": "text", "value": "Configure authenticator to use MFA" }, { "elementType": "defaultbuttontext", "id": "9", "label": "Default Button Text", "required": "true", "type": "text", "value": "Authenticator" } ] }, "dragging": "false", "height": "90", "id": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "nodes": null, "output": [ { "displayName": "True", "id": "true" }, { "displayName": "False", "id": "false" } ], "position": { "x": "39.63816595865569", "y": "-491.36370171146075" }, "positionAbsolute": { "x": "39.63816595865569", "y": "-491.36370171146075" }, "selected": "false", "type": "configureauthenticator", "width": "164" }, "b92fb05a-578a-4097-aec0-2df33b4c27a0": { "data": { "description": "Verifies if the authentication is successful or not, along with other statutes such as account locked, password expired.", "label": "Auth", "properties": [ { "elementType": "accesstoken", "id": "1", "label": "Access Token", "readOnly": "true", "type": "checkbox", "value": "true" }, { "elementType": "sessiontoken", "id": "2", "label": "Session Token", "type": "checkbox", "value": "false" }, { "elementType": "authvalidation", "id": "3", "label": "Auth Validation", "options": [ { "text": "Email Unverified", "value": "emailunverified" }, { "text": "Phone Unverified", "value": "phoneunverified" }, { "text": "Password Expired", "value": "passwordexpired" }, { "text": "Account Locked", "value": "accountlocked" } ], "type": "multiselect", "value": null } ] }, "height": "90", "id": "b92fb05a-578a-4097-aec0-2df33b4c27a0", "nodes": null, "output": [ { "displayName": "True", "id": "true" }, { "displayName": "False", "id": "false" }, { "displayName": "Account Locked", "id": "accountlocked" }, { "displayName": "Password Expired", "id": "passwordexpired" }, { "displayName": "Email Unverified", "id": "emailunverified" }, { "displayName": "Phone Unverified", "id": "phoneunverified" } ], "position": { "x": "-215.98193694275392", "y": "-66.19912170548083" }, "selected": "false", "type": "auth", "width": "164" }, "dd8723a2-afc1-4529-a0a6-2c0712af3e65": { "data": { "description": "Combines multiple nodes that request input into a single page for display to the user. Drag and drop nodes onto the web page node to combine them.", "label": "Web Page", "properties": [ { "elementType": "title", "id": "1", "label": "Web Page Header", "required": "true", "type": "text", "value": "MFA Authenticator" }, { "elementType": "description", "id": "2", "label": "Web Page Description", "required": "true", "type": "text", "value": "MFA Authenticator Flow" }, { "elementType": "buttontext", "id": "3", "label": "Submit Button Text", "required": "true", "type": "text", "value": "Submit" }, { "elementType": "footer", "id": "4", "label": "Web Page Footer", "required": "true", "type": "text", "value": "LoginRadius" }, { "elementType": "buttons", "id": "5", "label": "Buttons", "type": "buttons", "value": null } ] }, "dragging": "false", "height": "158", "id": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "nodes": [ { "data": { "label": "Email" }, "id": "a655db76-8831-411b-82f5-1be2784e4a78", "isChildNode": "true", "type": "email" }, { "data": { "label": "Password" }, "id": "fff21a66-437c-4a8a-96e0-744efaff8d87", "isChildNode": "true", "type": "password" } ], "output": [ { "displayName": "output", "id": "output" } ], "position": { "x": "-520.0072319257067", "y": "-209.33943568578155" }, "positionAbsolute": { "x": "-520.0072319257067", "y": "-209.33943568578155" }, "selected": "false", "type": "webpage", "width": "230" }, "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913": { "data": { "description": "To check whether the user has configured MFA or not. If configured, it gets and displays the configured method(s) for the user to select one and proceed. If not, the next node should be Configure MFA node (if the business wants that user should not proceed without MFA).", "label": "MFA Configured State", "properties": [ { "elementType": "mfamethods", "id": "1", "label": "MFA Methods", "options": [ { "checked": "false", "text": "Authenticator", "value": "Authenticator" }, { "checked": "false", "text": "Security Question", "value": "Security Question" }, { "checked": "false", "text": "Email OTP", "value": "Email OTP" }, { "checked": "false", "text": "SMS OTP", "value": "SMS OTP" } ], "outputSelector": "true", "required": "true", "type": "multiselect", "value": [ "Authenticator" ] }, { "elementType": "authenticatorbuttontext", "id": "2", "label": "Authenticator Button Text", "parentPropertyId": "1", "parentPropertyValue": "Authenticator", "required": "true", "type": "text", "value": "Authenticator" }, { "elementType": "securityquestionbuttontext", "id": "3", "label": "Security Question Button Text", "parentPropertyId": "1", "parentPropertyValue": "Security Question", "required": "true", "type": "text", "value": "" }, { "elementType": "emailotpbuttontext", "id": "4", "label": "Email OTP Button Text", "parentPropertyId": "1", "parentPropertyValue": "Email OTP", "required": "true", "type": "text", "value": "" }, { "elementType": "smsotpbuttontext", "id": "5", "label": "SMS OTP Button Text", "parentPropertyId": "1", "parentPropertyValue": "SMS OTP", "required": "true", "type": "text", "value": "" } ] }, "dragging": "false", "height": "130", "id": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "nodes": null, "output": [ { "displayName": "EmailOTP", "id": "emailotp" }, { "displayName": "SMSOTP", "id": "smsotp" }, { "displayName": "Authenticator", "id": "authenticator" }, { "displayName": "SecurityQuestion", "id": "securityquestion" }, { "displayName": "BackupCode", "id": "backupcode" }, { "displayName": "False", "id": "false" } ], "position": { "x": "28.222649657516513", "y": "-239.82180479922073" }, "positionAbsolute": { "x": "28.222649657516513", "y": "-239.82180479922073" }, "selected": "false", "type": "mfastate", "width": "164" }, "initialNode": { "data": { "label": "initial node" }, "dragging": "false", "height": "40", "id": "initialNode", "nodes": null, "position": { "x": "-640.0257070587011", "y": "-185.85618992280232" }, "positionAbsolute": { "x": "-640.0257070587011", "y": "-185.85618992280232" }, "selected": "false", "type": "initial", "width": "40" } }, "policies": { "email": [ { "elementType": "shouldrestrict", "id": "1", "label": "Should Restrict", "type": "checkbox", "value": "false" }, { "elementType": "blacklistwhitelist", "id": "2", "label": "Blacklist/Whitelist", "options": [ { "text": "Blacklist", "value": "Blacklist" }, { "text": "Whitelist", "value": "Whitelist" } ], "type": "select", "value": "" }, { "elementType": "emaildomain", "id": "3", "label": "Email/Domain", "type": "multivalue", "value": "" } ], "password": [ { "elementType": "rules", "id": "4", "label": "Password Validation", "tooltipMessage": "Validate password property must be enabled", "type": "text", "value": "min_length[6]|max_length[32]|required" }, { "elementType": "passwordexpiration", "id": "5", "label": "Password Expiration", "options": [ { "text": "Days", "value": "Days" }, { "text": "Month", "value": "Month" }, { "text": "Year", "value": "Year" } ], "type": "selectinput", "value": "" }, { "elementType": "passwordhistory", "id": "6", "label": "Password History", "type": "text", "value": "" }, { "elementType": "confirmpasswordprotection", "id": "7", "label": "Common Password Protection", "type": "checkbox", "value": "false" }, { "elementType": "dictionarypasswordprevention", "id": "8", "label": "Dictionary Password Prevention", "type": "checkbox", "value": "false" }, { "elementType": "profilefieldpasswordprevention", "id": "9", "label": "Profile Field Password Prevention", "type": "checkbox", "value": "false" } ], "phone": [ { "elementType": "isprimary", "id": "14", "label": "Is Primary", "type": "checkbox", "value": "false" }, { "elementType": "countrycode", "id": "15", "label": "Country Code", "type": "checkbox", "value": "false" }, { "elementType": "setdefaultcountrycode", "id": "16", "isSearchEnabled": "true", "label": "Set Default Country Code", "options": "optionsofsetcountrycode", "primaryParentId": "15", "type": "select", "value": "" }, { "elementType": "allowparticularcountrycode", "id": "17", "isSearchEnabled": "true", "label": "Allow particular country code", "options": "optionsofallowcountrycode", "primaryParentId": "15", "type": "multiselect", "value": null } ], "pininput": [ { "elementType": "rules", "id": "13", "label": "Pin Validation", "type": "text", "value": "" } ], "username": [ { "elementType": "isprimary", "id": "10", "label": "Is Primary", "type": "checkbox", "value": "false" }, { "elementType": "duplicateemail", "id": "11", "label": "Duplicate Email", "primaryParentId": "10", "type": "checkbox", "value": "false" }, { "elementType": "casesensitiveusername", "id": "12", "label": "Case sensitive Username", "type": "checkbox", "value": "false" } ] }, "tree": { "entryNodeId": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "nodes": { "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24": { "connections": [ { "emailotp": "" }, { "smsotp": "" }, { "authenticator": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b" }, { "securityquestion": "" }, { "skip": "" }, { "false": "" } ], "id": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24", "type": "configuremfa" }, "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e": { "connections": [ { "output": "6799ebff-ab72-4ebd-869b-65672bd0a799" } ], "id": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e", "type": "webpage" }, "6799ebff-ab72-4ebd-869b-65672bd0a799": { "connections": [ { "true": "SuccessFinalNode" }, { "false": "FailureFinalNode" } ], "id": "6799ebff-ab72-4ebd-869b-65672bd0a799", "type": "verifyauthenticatortotp" }, "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b": { "connections": [ { "true": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e" }, { "false": "FailureFinalNode" } ], "id": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b", "type": "configureauthenticator" }, "b92fb05a-578a-4097-aec0-2df33b4c27a0": { "connections": [ { "true": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913" }, { "false": "FailureFinalNode" }, { "accountlocked": "" }, { "passwordexpired": "" }, { "emailunverified": "" }, { "phoneunverified": "" } ], "id": "b92fb05a-578a-4097-aec0-2df33b4c27a0", "type": "auth" }, "dd8723a2-afc1-4529-a0a6-2c0712af3e65": { "connections": [ { "output": "b92fb05a-578a-4097-aec0-2df33b4c27a0" } ], "id": "dd8723a2-afc1-4529-a0a6-2c0712af3e65", "type": "webpage" }, "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913": { "connections": [ { "emailotp": "" }, { "smsotp": "" }, { "authenticator": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e" }, { "securityquestion": "" }, { "backupcode": "" }, { "false": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24" } ], "id": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913", "type": "mfastate" } }, "staticNodes": { "failureFinalNode": { "position": { "x": "400", "y": "300" } }, "initialNode": { "position": { "x": "-640.0257070587011", "y": "-185.85618992280232" } }, "successFinalNode": { "position": { "x": "100", "y": "300" } } } }, "viewport": { "x": "647.0394243743131", "y": "464.4454913683603", "zoom": "0.8972987530157684" } }, "Description": "description", "State": "ACTIVE" }'{
"Id": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"Name": "mfa-auth",
"ThemeName": "default",
"Data": {
"edges": [
{
"id": "reactflow__edge-6799ebff-ab72-4ebd-869b-65672bd0a799true-SuccessFinalNode",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"sourceHandle": "true",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "SuccessFinalNode",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-6799ebff-ab72-4ebd-869b-65672bd0a799false-FailureFinalNode",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"sourceHandle": "false",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "FailureFinalNode",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913false-1eb72cc9-7a2c-44f7-817d-00a94a9c1a24",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"sourceHandle": "false",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-1eb72cc9-7a2c-44f7-817d-00a94a9c1a24authenticator-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24",
"sourceHandle": "authenticator",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8bfalse-FailureFinalNode",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"sourceHandle": "false",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "FailureFinalNode",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-initialNodeoutput-dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "initialNode",
"sourceHandle": "output",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-dd8723a2-afc1-4529-a0a6-2c0712af3e65output-b92fb05a-578a-4097-aec0-2df33b4c27a0",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"sourceHandle": "output",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "b92fb05a-578a-4097-aec0-2df33b4c27a0",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-b92fb05a-578a-4097-aec0-2df33b4c27a0true-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "b92fb05a-578a-4097-aec0-2df33b4c27a0",
"sourceHandle": "true",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-b92fb05a-578a-4097-aec0-2df33b4c27a0false-FailureFinalNode",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "b92fb05a-578a-4097-aec0-2df33b4c27a0",
"sourceHandle": "false",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "FailureFinalNode",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-ac8ae2f4-48b9-4c35-bd68-4cbf11730b8btrue-4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"sourceHandle": "true",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913authenticator-4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"sourceHandle": "authenticator",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"targetHandle": null,
"type": "smoothstep"
},
{
"id": "reactflow__edge-4fd9fc82-5cc5-4410-94c7-cc8ac301a31eoutput-6799ebff-ab72-4ebd-869b-65672bd0a799",
"markerEnd": {
"color": "#30b3ff",
"type": "arrowclosed"
},
"selected": "false",
"source": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"sourceHandle": "output",
"style": {
"stroke": "#30b3ff",
"strokeWidth": "1"
},
"target": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"targetHandle": null,
"type": "smoothstep"
}
],
"innerNodes": {
"46d6674e-bbc6-44bc-951f-98cffd6441b6": {
"data": {
"description": "Displays the option to field to enter TOTP (when Authenticator is already configured).",
"label": "Authenticator Input",
"properties": null
},
"dragging": "false",
"extent": "parent",
"height": "50",
"hidden": "true",
"id": "46d6674e-bbc6-44bc-951f-98cffd6441b6",
"isChildNode": "true",
"nodes": null,
"parentNode": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"position": {
"x": "290.33256209500405",
"y": "-206.97348008280136"
},
"positionAbsolute": {
"x": "290.33256209500405",
"y": "-206.97348008280136"
},
"selected": "false",
"type": "authenticatorinput",
"width": "150"
},
"a655db76-8831-411b-82f5-1be2784e4a78": {
"data": {
"description": "Prompts the user to enter the email and stores the input. It is used with the Web Page node.",
"label": "Email",
"properties": [
{
"elementType": "emailonlyasinput",
"id": "1",
"label": "Email Only as Input",
"type": "checkbox",
"value": "false"
},
{
"elementType": "isprimary",
"id": "2",
"label": "Is Primary",
"primaryParentId": "1",
"type": "checkbox",
"value": "true"
},
{
"elementType": "emailtype",
"id": "3",
"label": "Email Type",
"primaryParentId": "1",
"secondaryParentId": "2",
"type": "text",
"value": ""
},
{
"elementType": "rules",
"id": "4",
"label": "Validation String",
"primaryParentId": "1",
"type": "text",
"value": ""
}
]
},
"draggable": "true",
"dragging": "false",
"extent": "parent",
"height": "50",
"hidden": "true",
"id": "a655db76-8831-411b-82f5-1be2784e4a78",
"isChildNode": "true",
"nodes": null,
"parentNode": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"position": {
"x": "-499.8966093003752",
"y": "-455.39881839572"
},
"positionAbsolute": {
"x": "-499.8966093003752",
"y": "-455.39881839572"
},
"selected": "false",
"type": "email",
"width": "150"
},
"fff21a66-437c-4a8a-96e0-744efaff8d87": {
"data": {
"description": "Prompts the user to enter their password and stores the input. This node is to be used for entering the password during registration, login, password update and password forget etc. It is used with the Web Page node.",
"label": "Password",
"properties": [
{
"elementType": "passwordonlyasinput",
"id": "1",
"label": "Password Only as Input",
"tag": "password",
"type": "checkbox",
"value": "false"
},
{
"elementType": "oldpassword",
"id": "2",
"label": "Old Password",
"primaryParentId": "1",
"tag": "password",
"type": "checkbox",
"value": "false"
},
{
"elementType": "newpassword",
"id": "3",
"label": "New Password",
"primaryParentId": "1",
"tag": "password",
"type": "checkbox",
"value": "false"
},
{
"elementType": "confirmpassword",
"id": "4",
"label": "Confirm Password",
"primaryParentId": "1",
"tag": "password",
"type": "checkbox",
"value": "false"
},
{
"elementType": "validatepassword",
"id": "5",
"label": "Validate Password",
"primaryParentId": "1",
"tag": "policy",
"type": "checkbox",
"value": "false"
}
]
},
"draggable": "true",
"dragging": "false",
"extent": "parent",
"height": "50",
"hidden": "true",
"id": "fff21a66-437c-4a8a-96e0-744efaff8d87",
"isChildNode": "true",
"nodes": null,
"parentNode": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"position": {
"x": "-480.96896447653376",
"y": "-480.2413522270118"
},
"positionAbsolute": {
"x": "-480.96896447653376",
"y": "-480.2413522270118"
},
"selected": "false",
"type": "password",
"width": "150"
}
},
"nodes": {
"1eb72cc9-7a2c-44f7-817d-00a94a9c1a24": {
"data": {
"description": "Define the MFA flow (mandatory or optional), settings and method(s) for all users. To let users register/configure the MFA method from the available method(s) on login. ",
"label": "Configure MFA",
"properties": [
{
"elementType": "mfaflow",
"id": "1",
"label": "MFA Flow",
"options": [
{
"text": "Mandatory",
"value": "Mandatory"
},
{
"text": "Optional",
"value": "Optional"
}
],
"required": "true",
"type": "select",
"value": "Mandatory"
},
{
"elementType": "message",
"id": "2",
"label": "Message",
"required": "true",
"type": "text",
"value": "Authenticator"
},
{
"elementType": "mfamethods",
"id": "3",
"label": "MFA Methods",
"options": [
{
"checked": "false",
"text": "Authenticator",
"value": "Authenticator"
},
{
"checked": "false",
"text": "Security Question",
"value": "Security Question"
},
{
"checked": "false",
"text": "Email OTP",
"value": "Email OTP"
},
{
"checked": "false",
"text": "SMS OTP",
"value": "SMS OTP"
}
],
"outputSelector": "true",
"required": "true",
"type": "multiselect",
"value": [
"Authenticator"
]
},
{
"elementType": "authenticatorbuttontext",
"id": "4",
"label": "Authenticator Button Text",
"parentPropertyId": "3",
"parentPropertyValue": "Authenticator",
"required": "true",
"type": "text",
"value": "Configure Authenticator"
},
{
"elementType": "securityquestionbuttontext",
"id": "5",
"label": "Security Question Button Text",
"parentPropertyId": "3",
"parentPropertyValue": "Security Question",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "emailotpbuttontext",
"id": "6",
"label": "Email OTP Button Text",
"parentPropertyId": "3",
"parentPropertyValue": "Email OTP",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "smsotpbuttontext",
"id": "7",
"label": "SMS OTP Button Text",
"parentPropertyId": "3",
"parentPropertyValue": "SMS OTP",
"required": "true",
"type": "text",
"value": ""
}
]
},
"dragging": "false",
"height": "130",
"id": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24",
"nodes": null,
"output": [
{
"displayName": "EmailOTP",
"id": "emailotp"
},
{
"displayName": "SMSOTP",
"id": "smsotp"
},
{
"displayName": "Authenticator",
"id": "authenticator"
},
{
"displayName": "SecurityQuestion",
"id": "securityquestion"
},
{
"displayName": "Skip",
"id": "skip"
},
{
"displayName": "False",
"id": "false"
}
],
"position": {
"x": "-189.86368278693385",
"y": "-453.57986075944297"
},
"positionAbsolute": {
"x": "-189.86368278693385",
"y": "-453.57986075944297"
},
"selected": "false",
"type": "configuremfa",
"width": "164"
},
"4fd9fc82-5cc5-4410-94c7-cc8ac301a31e": {
"data": {
"description": "Combines multiple nodes that request input into a single page for display to the user. Drag and drop nodes onto the web page node to combine them.",
"label": "Web Page",
"properties": [
{
"elementType": "title",
"id": "1",
"label": "Web Page Header",
"required": "true",
"type": "text",
"value": "Authenticator Code"
},
{
"elementType": "description",
"id": "2",
"label": "Web Page Description",
"required": "true",
"type": "text",
"value": "Enter the Authenticator Code"
},
{
"elementType": "buttontext",
"id": "3",
"label": "Submit Button Text",
"required": "true",
"type": "text",
"value": "Verify"
},
{
"elementType": "footer",
"id": "4",
"label": "Web Page Footer",
"required": "true",
"type": "text",
"value": "LoginRadius"
},
{
"elementType": "buttons",
"id": "5",
"label": "Buttons",
"type": "buttons",
"value": null
}
]
},
"dragging": "false",
"height": "114",
"id": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"nodes": [
{
"data": {
"label": "Authenticator Input"
},
"id": "46d6674e-bbc6-44bc-951f-98cffd6441b6",
"isChildNode": "true",
"type": "authenticatorinput"
}
],
"output": [
{
"displayName": "output",
"id": "output"
}
],
"position": {
"x": "276.136828477123",
"y": "-237.73090292154373"
},
"positionAbsolute": {
"x": "276.136828477123",
"y": "-237.73090292154373"
},
"selected": "false",
"type": "webpage",
"width": "230"
},
"6799ebff-ab72-4ebd-869b-65672bd0a799": {
"data": {
"description": "Verifies if the entered TOTP for authenticator is valid or not.",
"label": "Verify Authenticator",
"properties": null
},
"dragging": "false",
"height": "90",
"id": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"nodes": null,
"output": [
{
"displayName": "True",
"id": "true"
},
{
"displayName": "False",
"id": "false"
}
],
"position": {
"x": "616.5127762283203",
"y": "-370.34395454050144"
},
"positionAbsolute": {
"x": "616.5127762283203",
"y": "-370.34395454050144"
},
"selected": "false",
"type": "verifyauthenticatortotp",
"width": "164"
},
"FailureFinalNode": {
"data": {
"description": "Denotes that the workflow ended at failure. ",
"label": "Failure",
"properties": [
{
"id": "1",
"label": "Redirect URL",
"type": "text",
"value": ""
}
]
},
"dragging": "false",
"height": "40",
"id": "FailureFinalNode",
"nodes": null,
"position": {
"x": "868.1393360508125",
"y": "-6.556228920048781"
},
"positionAbsolute": {
"x": "868.1393360508125",
"y": "-6.556228920048781"
},
"selected": "false",
"type": "finalNegative",
"width": "40"
},
"SuccessFinalNode": {
"data": {
"description": "Denotes that the workflow ended in success. ",
"label": "Success",
"properties": [
{
"id": "1",
"label": "Redirect URL",
"type": "text",
"value": ""
}
]
},
"dragging": "false",
"height": "40",
"id": "SuccessFinalNode",
"nodes": null,
"position": {
"x": "870.7506472583059",
"y": "-346.426228223721"
},
"positionAbsolute": {
"x": "870.7506472583059",
"y": "-346.426228223721"
},
"selected": "false",
"type": "finalPositive",
"width": "40"
},
"ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b": {
"data": {
"description": "To configure the Authenticator method while setting up MFA. Businesses can also customize the labels and descriptions that will be displayed on the Authenticator screen.",
"label": "Configure Authenticator",
"properties": [
{
"elementType": "issuerid",
"id": "1",
"label": "Issuer ID",
"required": "true",
"type": "text",
"value": "LR"
},
{
"elementType": "qrcodewidth",
"id": "2",
"label": "QR Code Width",
"required": "true",
"type": "text",
"value": "200"
},
{
"elementType": "qrcodeheight",
"id": "3",
"label": "QR Code Height",
"required": "true",
"type": "text",
"value": "200"
},
{
"elementType": "displaygetapp",
"id": "4",
"label": "Display Get App",
"type": "checkbox",
"value": "false"
},
{
"elementType": "getapptext",
"id": "5",
"label": "Get App Text",
"parentPropertyId": "4",
"parentPropertyValue": "true",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "getapplink",
"id": "6",
"label": "Get App Link",
"parentPropertyId": "4",
"parentPropertyValue": "true",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "googleauthenticatorlabel",
"id": "7",
"label": "Authenticator label",
"required": "true",
"type": "text",
"value": "Configure Authenticator"
},
{
"elementType": "googleauthenticatordescription",
"id": "8",
"label": "Authenticator Description",
"required": "true",
"type": "text",
"value": "Configure authenticator to use MFA"
},
{
"elementType": "defaultbuttontext",
"id": "9",
"label": "Default Button Text",
"required": "true",
"type": "text",
"value": "Authenticator"
}
]
},
"dragging": "false",
"height": "90",
"id": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"nodes": null,
"output": [
{
"displayName": "True",
"id": "true"
},
{
"displayName": "False",
"id": "false"
}
],
"position": {
"x": "39.63816595865569",
"y": "-491.36370171146075"
},
"positionAbsolute": {
"x": "39.63816595865569",
"y": "-491.36370171146075"
},
"selected": "false",
"type": "configureauthenticator",
"width": "164"
},
"b92fb05a-578a-4097-aec0-2df33b4c27a0": {
"data": {
"description": "Verifies if the authentication is successful or not, along with other statutes such as account locked, password expired.",
"label": "Auth",
"properties": [
{
"elementType": "accesstoken",
"id": "1",
"label": "Access Token",
"readOnly": "true",
"type": "checkbox",
"value": "true"
},
{
"elementType": "sessiontoken",
"id": "2",
"label": "Session Token",
"type": "checkbox",
"value": "false"
},
{
"elementType": "authvalidation",
"id": "3",
"label": "Auth Validation",
"options": [
{
"text": "Email Unverified",
"value": "emailunverified"
},
{
"text": "Phone Unverified",
"value": "phoneunverified"
},
{
"text": "Password Expired",
"value": "passwordexpired"
},
{
"text": "Account Locked",
"value": "accountlocked"
}
],
"type": "multiselect",
"value": null
}
]
},
"height": "90",
"id": "b92fb05a-578a-4097-aec0-2df33b4c27a0",
"nodes": null,
"output": [
{
"displayName": "True",
"id": "true"
},
{
"displayName": "False",
"id": "false"
},
{
"displayName": "Account Locked",
"id": "accountlocked"
},
{
"displayName": "Password Expired",
"id": "passwordexpired"
},
{
"displayName": "Email Unverified",
"id": "emailunverified"
},
{
"displayName": "Phone Unverified",
"id": "phoneunverified"
}
],
"position": {
"x": "-215.98193694275392",
"y": "-66.19912170548083"
},
"selected": "false",
"type": "auth",
"width": "164"
},
"dd8723a2-afc1-4529-a0a6-2c0712af3e65": {
"data": {
"description": "Combines multiple nodes that request input into a single page for display to the user. Drag and drop nodes onto the web page node to combine them.",
"label": "Web Page",
"properties": [
{
"elementType": "title",
"id": "1",
"label": "Web Page Header",
"required": "true",
"type": "text",
"value": "MFA Authenticator"
},
{
"elementType": "description",
"id": "2",
"label": "Web Page Description",
"required": "true",
"type": "text",
"value": "MFA Authenticator Flow"
},
{
"elementType": "buttontext",
"id": "3",
"label": "Submit Button Text",
"required": "true",
"type": "text",
"value": "Submit"
},
{
"elementType": "footer",
"id": "4",
"label": "Web Page Footer",
"required": "true",
"type": "text",
"value": "LoginRadius"
},
{
"elementType": "buttons",
"id": "5",
"label": "Buttons",
"type": "buttons",
"value": null
}
]
},
"dragging": "false",
"height": "158",
"id": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"nodes": [
{
"data": {
"label": "Email"
},
"id": "a655db76-8831-411b-82f5-1be2784e4a78",
"isChildNode": "true",
"type": "email"
},
{
"data": {
"label": "Password"
},
"id": "fff21a66-437c-4a8a-96e0-744efaff8d87",
"isChildNode": "true",
"type": "password"
}
],
"output": [
{
"displayName": "output",
"id": "output"
}
],
"position": {
"x": "-520.0072319257067",
"y": "-209.33943568578155"
},
"positionAbsolute": {
"x": "-520.0072319257067",
"y": "-209.33943568578155"
},
"selected": "false",
"type": "webpage",
"width": "230"
},
"e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913": {
"data": {
"description": "To check whether the user has configured MFA or not. If configured, it gets and displays the configured method(s) for the user to select one and proceed. If not, the next node should be Configure MFA node (if the business wants that user should not proceed without MFA).",
"label": "MFA Configured State",
"properties": [
{
"elementType": "mfamethods",
"id": "1",
"label": "MFA Methods",
"options": [
{
"checked": "false",
"text": "Authenticator",
"value": "Authenticator"
},
{
"checked": "false",
"text": "Security Question",
"value": "Security Question"
},
{
"checked": "false",
"text": "Email OTP",
"value": "Email OTP"
},
{
"checked": "false",
"text": "SMS OTP",
"value": "SMS OTP"
}
],
"outputSelector": "true",
"required": "true",
"type": "multiselect",
"value": [
"Authenticator"
]
},
{
"elementType": "authenticatorbuttontext",
"id": "2",
"label": "Authenticator Button Text",
"parentPropertyId": "1",
"parentPropertyValue": "Authenticator",
"required": "true",
"type": "text",
"value": "Authenticator"
},
{
"elementType": "securityquestionbuttontext",
"id": "3",
"label": "Security Question Button Text",
"parentPropertyId": "1",
"parentPropertyValue": "Security Question",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "emailotpbuttontext",
"id": "4",
"label": "Email OTP Button Text",
"parentPropertyId": "1",
"parentPropertyValue": "Email OTP",
"required": "true",
"type": "text",
"value": ""
},
{
"elementType": "smsotpbuttontext",
"id": "5",
"label": "SMS OTP Button Text",
"parentPropertyId": "1",
"parentPropertyValue": "SMS OTP",
"required": "true",
"type": "text",
"value": ""
}
]
},
"dragging": "false",
"height": "130",
"id": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"nodes": null,
"output": [
{
"displayName": "EmailOTP",
"id": "emailotp"
},
{
"displayName": "SMSOTP",
"id": "smsotp"
},
{
"displayName": "Authenticator",
"id": "authenticator"
},
{
"displayName": "SecurityQuestion",
"id": "securityquestion"
},
{
"displayName": "BackupCode",
"id": "backupcode"
},
{
"displayName": "False",
"id": "false"
}
],
"position": {
"x": "28.222649657516513",
"y": "-239.82180479922073"
},
"positionAbsolute": {
"x": "28.222649657516513",
"y": "-239.82180479922073"
},
"selected": "false",
"type": "mfastate",
"width": "164"
},
"initialNode": {
"data": {
"label": "initial node"
},
"dragging": "false",
"height": "40",
"id": "initialNode",
"nodes": null,
"position": {
"x": "-640.0257070587011",
"y": "-185.85618992280232"
},
"positionAbsolute": {
"x": "-640.0257070587011",
"y": "-185.85618992280232"
},
"selected": "false",
"type": "initial",
"width": "40"
}
},
"policies": {
"email": [
{
"elementType": "shouldrestrict",
"id": "1",
"label": "Should Restrict",
"type": "checkbox",
"value": "false"
},
{
"elementType": "blacklistwhitelist",
"id": "2",
"label": "Blacklist/Whitelist",
"options": [
{
"text": "Blacklist",
"value": "Blacklist"
},
{
"text": "Whitelist",
"value": "Whitelist"
}
],
"type": "select",
"value": ""
},
{
"elementType": "emaildomain",
"id": "3",
"label": "Email/Domain",
"type": "multivalue",
"value": ""
}
],
"password": [
{
"elementType": "rules",
"id": "4",
"label": "Password Validation",
"tooltipMessage": "Validate password property must be enabled",
"type": "text",
"value": "min_length[6]|max_length[32]|required"
},
{
"elementType": "passwordexpiration",
"id": "5",
"label": "Password Expiration",
"options": [
{
"text": "Days",
"value": "Days"
},
{
"text": "Month",
"value": "Month"
},
{
"text": "Year",
"value": "Year"
}
],
"type": "selectinput",
"value": ""
},
{
"elementType": "passwordhistory",
"id": "6",
"label": "Password History",
"type": "text",
"value": ""
},
{
"elementType": "confirmpasswordprotection",
"id": "7",
"label": "Common Password Protection",
"type": "checkbox",
"value": "false"
},
{
"elementType": "dictionarypasswordprevention",
"id": "8",
"label": "Dictionary Password Prevention",
"type": "checkbox",
"value": "false"
},
{
"elementType": "profilefieldpasswordprevention",
"id": "9",
"label": "Profile Field Password Prevention",
"type": "checkbox",
"value": "false"
}
],
"phone": [
{
"elementType": "isprimary",
"id": "14",
"label": "Is Primary",
"type": "checkbox",
"value": "false"
},
{
"elementType": "countrycode",
"id": "15",
"label": "Country Code",
"type": "checkbox",
"value": "false"
},
{
"elementType": "setdefaultcountrycode",
"id": "16",
"isSearchEnabled": "true",
"label": "Set Default Country Code",
"options": "optionsofsetcountrycode",
"primaryParentId": "15",
"type": "select",
"value": ""
},
{
"elementType": "allowparticularcountrycode",
"id": "17",
"isSearchEnabled": "true",
"label": "Allow particular country code",
"options": "optionsofallowcountrycode",
"primaryParentId": "15",
"type": "multiselect",
"value": null
}
],
"pininput": [
{
"elementType": "rules",
"id": "13",
"label": "Pin Validation",
"type": "text",
"value": ""
}
],
"username": [
{
"elementType": "isprimary",
"id": "10",
"label": "Is Primary",
"type": "checkbox",
"value": "false"
},
{
"elementType": "duplicateemail",
"id": "11",
"label": "Duplicate Email",
"primaryParentId": "10",
"type": "checkbox",
"value": "false"
},
{
"elementType": "casesensitiveusername",
"id": "12",
"label": "Case sensitive Username",
"type": "checkbox",
"value": "false"
}
]
},
"tree": {
"entryNodeId": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"nodes": {
"1eb72cc9-7a2c-44f7-817d-00a94a9c1a24": {
"connections": [
{
"emailotp": ""
},
{
"smsotp": ""
},
{
"authenticator": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b"
},
{
"securityquestion": ""
},
{
"skip": ""
},
{
"false": ""
}
],
"id": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24",
"type": "configuremfa"
},
"4fd9fc82-5cc5-4410-94c7-cc8ac301a31e": {
"connections": [
{
"output": "6799ebff-ab72-4ebd-869b-65672bd0a799"
}
],
"id": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e",
"type": "webpage"
},
"6799ebff-ab72-4ebd-869b-65672bd0a799": {
"connections": [
{
"true": "SuccessFinalNode"
},
{
"false": "FailureFinalNode"
}
],
"id": "6799ebff-ab72-4ebd-869b-65672bd0a799",
"type": "verifyauthenticatortotp"
},
"ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b": {
"connections": [
{
"true": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e"
},
{
"false": "FailureFinalNode"
}
],
"id": "ac8ae2f4-48b9-4c35-bd68-4cbf11730b8b",
"type": "configureauthenticator"
},
"b92fb05a-578a-4097-aec0-2df33b4c27a0": {
"connections": [
{
"true": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913"
},
{
"false": "FailureFinalNode"
},
{
"accountlocked": ""
},
{
"passwordexpired": ""
},
{
"emailunverified": ""
},
{
"phoneunverified": ""
}
],
"id": "b92fb05a-578a-4097-aec0-2df33b4c27a0",
"type": "auth"
},
"dd8723a2-afc1-4529-a0a6-2c0712af3e65": {
"connections": [
{
"output": "b92fb05a-578a-4097-aec0-2df33b4c27a0"
}
],
"id": "dd8723a2-afc1-4529-a0a6-2c0712af3e65",
"type": "webpage"
},
"e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913": {
"connections": [
{
"emailotp": ""
},
{
"smsotp": ""
},
{
"authenticator": "4fd9fc82-5cc5-4410-94c7-cc8ac301a31e"
},
{
"securityquestion": ""
},
{
"backupcode": ""
},
{
"false": "1eb72cc9-7a2c-44f7-817d-00a94a9c1a24"
}
],
"id": "e0e82eb2-ee65-4a6b-ab25-3e6c6dcb2913",
"type": "mfastate"
}
},
"staticNodes": {
"failureFinalNode": {
"position": {
"x": "400",
"y": "300"
}
},
"initialNode": {
"position": {
"x": "-640.0257070587011",
"y": "-185.85618992280232"
}
},
"successFinalNode": {
"position": {
"x": "100",
"y": "300"
}
}
}
},
"viewport": {
"x": "647.0394243743131",
"y": "464.4454913683603",
"zoom": "0.8972987530157684"
}
},
"Description": "description",
"State": "ACTIVE"
}{
"ErrorCode": 7914,
"Message": "Post body is invalid",
"Description": "Please use a valid post body in JSON format."
}{
"Message": "Access Unauthorized",
"Description": "Access Unauthorized, please use valid authorization to access this endpoint.",
"ErrorCode": 6002
}{
"ErrorCode": 8032,
"Message": "Workflow configuration already exist with same name.",
"Description": "Workflow configuration already exists with same name, Please use another name to update the workflow name."
}{
"Message": "Operation failed due to an internal error.",
"Description": "An unknown internal error occurred, please try again in a few minutes or contact your system administrator.",
"ErrorCode": 7909
}