Validation Checker Flow Action
Created by Eric Smith
See https://unofficialsf.com/validation-checker-flow-action/ for the most up to date information on this component.
Don’t your users just love it when they see this on their screen?
The fun really starts when you get this email in your inbox.
You could certainly take the time and effort to add a bunch of decision elements and recreate all of your validation rules in your flow. I bet it would be even more exciting trying to keep all of that maintained.
Wouldn’t it be nice if your Flows could check for and trap validation rule failures, missing required fields and text overruns?
Well now they can with this simple Check Validation flow action.
Before you attempt a Create Records or Update Records element in your Flow, add this simple Flow Action and pass it a single record or a collection of records.

This action will check your record(s) and let you know if there would be any Validation Rule errors, field size overruns or missing required field errors if you tried to create or update the record(s).
All this is done before you try to do something that would cause the Flow to fail with an unhandled fault. You get to determine what to do next and what information you want to present to your user.
You can also use this action as part of your Fault Paths. Instead of just handling the fault without knowing exactly what it is, you can get the error(s) that caused the fault and act on them as you see fit.

In this Flow, a Toast Message will be displayed with any errors and the User will be given a choice of whether or not they want to Try Again or Exit.
You can specify which field from your record you want to include in the error messages to help identify which record(s) failed.
The action returns an isError boolean value along with a text message of the individual errors.
Validation Rule Failures
Missing Required Field Error
Text Field Size Error
You can even specify an optional input attribute to use this action instead of the Create Records or Update Records to actually perform the inserts and updates if no errors are generated. If you perform a successful insert of new records, the new record ID(s) will be returned by the action.
Take control of your automations and no more worrying about Flows crashing when User provided values won’t pass Validation Rules or other input errors.
Restrictions
- If there are multiple types of errors, only one type of error will be returned.
- If any Text fields are over their size limit, only those errors will be returned.
- If any Validation Rule fails, all Validation Rule failures will be returned.
- If any Required Fields are missing, only those errors will be returned.
- Fields over their size limit are handled first, followed by Validation Rules, followed by Required Fields.
Attributes
Attribute | Type | Notes |
INPUT | ||
Input Record | SObject | Any Standard or Custom SObject Record Required: Provide either a Record or Record Collection, not both |
Input Record Collection | SObject Collection | Any Standard or Custom SObject Record Collection Required: Provide either a Record or Record Collection, not both |
Record Identifier Field API Name | String (Field API Name) | The record’s value for this field will be included as part of the error message. NOTE: The field must be included in the Record or Record Collection. Optional, Default: Id |
If no errors, commit inserted & updated records? | Boolean | Set to True if you want the action to upsert the record(s) if there are no errors Optional, Default: False |
OUTPUT | ||
isError | Boolean | True if there were any errors |
errorMessages | String | A single string that includes the error message for each failing record |
firstInsertedId | String | If the commit attribute is set to True and there are no errors, this will be the recordId of the first inserted record |
insertedIdCollection | String Collection | If the commit attribute is set to True and there are no errors, this will be a String collection of the recordIds of all of the inserted records |
Installation
Production or Developer Version 1.1
Sandbox Version 1.1
I am able to find Check Validation flow action in the flow, Could you please provide the steps to create it
LikeLike
Once installed, you can add an Action node to your flow and search for Validation.
LikeLike
Hi Eric, This is amazing and truly is a lifesaver my only problem is, is there no other way to update the package? its asking me to uninstall and reinstall the new one. which is a bit hard since I have used this in a lot of my flows already.
LikeLike
You could try installing it in a fresh sandbox and then use a Change Set to move it to your target org.
LikeLike
This is such a great addition! I am wondering how to deal with a situation where you are creating a new single record at the end of the flow. What value to I put in the Input record parameter?
LikeLike
Create a record variable for the Object and update all of your field values on that variable. Then pass the variable to the validation component. You can even set an attribute when calling the validation component to create the record if there are no errors, saving you from also having to add a Create Records to the flow.
LikeLiked by 1 person
Thank you Eric! I appreciate your quick and thorough response!
LikeLike