ScriptedValidateRecord 2025.10.9.21

Bundle

org.apache.nifi | nifi-scripting-nar

Description

This processor provides the ability to validate records in FlowFiles using the user-provided script. The script is expected to have a record as incoming argument and return with a boolean value. Based on this result, the processor categorizes the records as “valid” or “invalid” and routes them to the respective relationship in batch. Additionally the original FlowFile will be routed to the “original” relationship or in case of unsuccessful processing, to the “failed” relationship.

Tags

groovy, record, script, validate

Input Requirement

REQUIRED

Supports Sensitive Dynamic Properties

false

Properties

PropertyDescription
Module DirectoryComma-separated list of paths to files and/or directories which contain modules required by the script.
Record ReaderThe Record Reader to use parsing the incoming FlowFile into Records
Record WriterThe Record Writer to use for serializing Records after they have been transformed
Script BodyBody of script to execute. Only one of Script File or Script Body may be used
Script EngineThe Language to use for the script
Script FilePath to script file to execute. Only one of Script File or Script Body may be used

Restrictions

Required PermissionExplanation
execute codeProvides operator the ability to execute arbitrary code assuming all permissions that NiFi has.

Relationships

NameDescription
failureIn case of any issue during processing the incoming flow file, the incoming FlowFile will be routed to this relationship.
invalidFlowFile containing the invalid records from the incoming FlowFile will be routed to this relationship. If there are no invalid records, no FlowFile will be routed to this Relationship.
originalAfter successful procession, the incoming FlowFile will be transferred to this relationship. This happens regardless the FlowFiles might routed to “valid” and “invalid” relationships.
validFlowFile containing the valid records from the incoming FlowFile will be routed to this relationship. If there are no valid records, no FlowFile will be routed to this Relationship.

Writes attributes

NameDescription
mime.typeSets the mime.type attribute to the MIME Type specified by the Record Writer
record.countThe number of records within the flow file.
record.error.messageThis attribute provides on failure the error message encountered by the Reader or Writer.

See also