Skip to content

Algorithm Extensions

Models

Algorithm

  • algorithmName (maxLength=201)

    String
    Equivalent to the algorithm name saved by the user through the GUI. For out of the box algorithms, this will be a similar name as that in the GUI, but presented in a more user-friendly format.

  • algorithmType

    String
    The type of algorithm
    Enum values:
    - BINARY_LOOKUP
    - CLEANSING
    - COMPONENT
    - LOOKUP
    - MAPPLET
    - MAPPING
    - MINMAX
    - REDACTION
    - SEGMENT
    - TOKENIZATION

  • createdBy (optional; readOnly; maxLength=255)

    String
    The name of the user that created the algorithm

  • description (optional; maxLength=255)

    String
    The description of the algorithm

  • frameworkId (required only for Extended SL)

    Integer
    The FrameworkId, corresponding to the framework that extended algorithm is built upon. This field is to be used only for the Extended Algorithms. format: int32

  • algorithmExtension (optional)

    Object
    See examples below

AlgorithmExtension

BinaryLookupExtension

  • fileReferenceIds (optional)

    array[String]
    A list of file reference UUID values returned from the endpoint for uploading files to the Masking Engine.

DataCleansingExtension

  • fileReferenceId (optional)

    String
    The reference UUID value returned from the endpoint for uploading files to the Masking Engine. The file should contain a newline separated list of {value, replacement} pairs separated by the delimiter. No extraneous whitespace should be present.

  • delimiter (optional; minLength=1; maxLength=50; default="=")

    String
    The delimiter string used to separate {value, replacement} pairs in the uploaded file

FreeTextRedactionExtension

  • denyListRedaction (optional; default=true)

    Boolean
    Deny list redaction if true, allow list redaction if false.

  • lookupFileReferenceId (optional)

    String
    The reference UUID value returned from the endpoint for uploading the lookup file to the Masking Engine.

  • lookupRedactionValue (optional; maxLength=255)

    String
    The value to use to redact items matching entries specified in the lookup file.

  • profileSetId (optional)

    Integer
    The ID number of the profile set for defining the pattern matching to use for identifying values for redaction. format: int32

  • profileSetRedactionValue (optional; maxLength=255)

    String
    The value to use to redact items matching patterns defined by the profile set.

MappingExtension

  • fileReferenceId (optional)

    String
    The reference UUID value returned from the endpoint for uploading files to the Masking Engine. The file should contain a newline separated list of mapping values.

  • ignoreCharacters (optional; minimum=32; maximum=126)

    array[Integer]
    The integer ASCII values of characters to ignore in the column data to map

MappletExtension

  • mappletInput (optional; maxLength=500)

    String
    The name of the input variable for the custom algorithm

  • mappletOutput (optional; maxLength=500)

    String
    The name of the output variable for the custom algorithm

  • fileReferenceId (optional)

    String
    The reference UUID value returned from the endpoint for uploading files to the Masking Engine.

MinMaxExtension

  • minValue (optional; minimum=0)

    Integer
    The minimum value for a Number range used in conjunction with maxValue. This field cannot be combined with minDate or maxDate. format: int32

  • maxValue (optional; minimum=1)

    Integer
    The maximum value for a Number range used in conjunction with and must be greater than minValue. This field cannot be combined with minDate or maxDate. format: int32

  • minDate (optional)

    date
    The minimum value for a Date range used in conjunction with maxDate. The Date must be specified in one of the following formats according to RFC 3339 Section 5.6: "yyyy-MM-dd", "yyyy-MM-dd'T'HH:mm:ss.SSSZ", "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", or "EEE, dd MMM yyyy HH:mm:ss zzz". If a timezone is not specified, the Date will be interpreted as UTC. This field cannot be combined with minValue or maxValue. format: date

  • maxDate (optional)

    date
    The maximum value for a Date range used in conjunction with and must be greater than minDate. The Date must be specified in one of the following formats according to RFC 3339 Section 5.6: "yyyy-MM-dd", "yyyy-MM-dd'T'HH:mm:ss.SSSZ", "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", or "EEE, dd MMM yyyy HH:mm:ss zzz". If a timezone is not specified, the Date will be interpreted as UTC. This field cannot be combined with minValue or maxValue. format: date

  • outOfRangeDefaultValue (optional; maxLength=255)

    String
    The default replacement value for any value that is out-of-range.

Legacy Framework SecureLookupExtension

  • fileReferenceId (optional)

    String
    The reference UUID value returned from the endpoint for uploading files to the Masking Engine.

SegmentMappingExtension

  • preservedRanges (optional)

    array[SegmentMappingPreservedRange]
    List of character {offset, length} values specifying ranges of the real value to preserve. Offsets begin at 0

  • ignoreCharacters (optional)

    array[Integer]
    List of decimal values specifying ASCII characters to ignore (not mask, not count as part of any segment) in the real value. For example, 65 would ignore 'A'

  • segments (optional; minItems=2; maxItems=36)

    array[SegmentMappingSegment]

SegmentMappingPreservedRange
  • offset (optional)

    Integer
    The character offset of the range of input to preserve

  • length (optional)

    Integer
    The character length of the range of input to preserve

SegmentMappingSegment
  • length (optional; minimum=1; maximum=4)

    Integer
    The length of the segment in digits. This must be 1 for alpha-numeric segments

  • minInt (optional; minimum=0; maximum=9999)

    Integer
    The minimum value of the integer output range of the mapping function

  • maxInt (optional; minimum=0; maximum=9999)

    Integer
    The maximum value of the integer output range of the mapping function

  • minChar (optional; minLength=1; maxLength=1)

    String
    The minimum value of the character output range of the mapping function

  • maxChar (optional; minLength=1; maxLength=1)

    String
    The maximum value of the character output range of the mapping function

  • explicitRange (optional)

    String
    Explicitly specify the output range. Format depends on segment type and size

  • minRealInt (optional; minimum=0; maximum=9999)

    Integer
    The minimum value of the integer range specifying which real values will be masked

  • maxRealInt (optional; minimum=0; maximum=9999)

    Integer
    The maximum value of the integer range specifying which real values will be masked

  • minRealChar (optional; minLength=1; maxLength=1)

    String
    The minimum value of the character range specifying which real values will be masked

  • maxRealChar (optional; minLength=1; maxLength=1)

    String
    The maximum value of the character range specifying which real values will be masked

  • explicitRealRange (optional)

    String
    Explicitly specify the range of input values that should be masked. Format depends on segment type and size

AlgorithmExtension for Extended Algorithms

It uses the generic Object, defined in the base AlgorithmExtension. Depending on the Extended Algorithm design it currently supports following implementations (or their mix):

  • fileReference(s) (optional, name is defined by Extended Algorithm creator)

    single fileReference or array[FileReference]
    A JSON formatted file reference or list of file references. Each file reference may be one of the following four options: - UUID value returned from the endpoint for uploading file to the Masking Engine - NFS mounted file URL - HTTP URL to external web located file - HTTPS URL to external web located file

  • calledExtendedAlgorithm(s) (optional, name is defined by Extended Algorithm creator)

    single algorithmName or array[AlgorithmName]
    A JSON formatted name or a list of extended algorithms names

AlgorithmExtension for algorithms based on builtin Extended SL Framework

  • lookupFile (maxLength=255)

    String
    Lookup file may be one of the following four options:
    - UUID value returned from the endpoint for uploading file to the Masking Engine
    - NFS mounted file URL
    - HTTP URL to external web located file
    - HTTPS URL to external web located file

  • inputCaseSensitive (optional)

    Boolean
    Setting "true" means input value case matter (i.e. "Peter" and "peter" might be masked to different values)
    Setting "false" (default) makes input value case insensitive ("Peter" and "peter" would be masked to the same value)

  • maskedValueCase (optional)

    String
    The output (masked) value case enforcing.
    Enum values:
    - PRESERVE_LOOKUP_FILE - use the unmodified replacement value (default).
    - PRESERVE_INPUT - preserve case of input value. If mixed - use unmodified replacement value.
    - ALL_LOWER - force the output to lowercase.
    - ALL_UPPER - force the output to uppercase.