Name
See Name for more information about this algorithm framework.
Creating a name algorithm via API
Find the frameworkId for the Name Framework. This can be done via the following endpoint:
CODEalgorithm GET /algorithm/frameworks
The frameworkName is "Name" and the pluginName is "dlpx-core".
NONE{ "frameworkId": 10, "frameworkName": "Name", "frameworkType": "STRING", "description": "This Name algorithm masks input name (first or last) using values from the supplied LookupFile", "plugin": { "pluginId": 7, "pluginName": "dlpx-core", "pluginAuthor": "Delphix Engineering", "pluginType": "EXTENDED_ALGORITHM" }
Involved files (lookupFile, particlesToRemoveFile, and particlesToPreserveFile) should be provided via the File Reference. They can be uploaded via the following endpoint:
CODEfileUpload POST /file-uploads
Alternatively, those files can also be provided via HTTP / HTTPS / NFS mount URLs.
Create an Extensible Name Algorithm via the following endpoint:
CODEalgorithm POST /algorithms
Using the JSON formatted input, similar to the following example:
CODE{ "algorithmName": "NameDemo", "algorithmType": "COMPONENT", "description": "This is a new style Name algorithm", "frameworkId": 10, "algorithmExtension": { "lookupFile": { "uri": "delphix-file://upload/f_85f082535d054ee8a11696a24ed86d65/LN_LOOKUP_100K.txt" }, "particlesToRemoveFile": { "uri": "delphix-file://upload/f_1cc829ceee324113ab16c4e750dfce12/particlesToRemove.txt" }, "particlesToPreserveFile": { "uri": "delphix-file://upload/f_1cc829ceee324113ab16c4e750dfce12/particlesToPreserve.txt" }, "inputCaseSensitive": false, "filterAccent": true, "maskedValueCase": "PRESERVE_LOOKUP_FILE", "maxLengthOfMaskedName": 0, "maxNumberNames": 2 } }
Fields description:
"algorithmName": User-defined algorithm name.
"algorithmType": Should be "COMPONENT" for Extensible Algorithms.
"description": User-defined, free text field.
"frameworkId": Numeric ID for the framework, provided in line #2 and #5 in the above excerpts.
"algorithmExtension": The composite field, containing algorithm instance specific configuration parameters.
Name algorithm extension
lookupFile (required)
String Lookup file may be FileReferenceId in the 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
particlesToRemoveFile (optional)
String File listing particles to remove may be FileReferenceId in the 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
particlesToPreserveFile (optional)
String File listing particles to preserve may be FileReferenceId in the 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, default=false)
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).
filterAccent (optional, default=true)
Boolean
Setting "true" (default) means accented characters don’t matter - similar input with and without accented characters are masked to the same values ("Adrián" and "Adrian" both mask to "John").
Setting "false" makes the input value accent sensitive ("Adrián" and "Adrian" would be masked to different values).
maskedValueCase (optional, default="PRESERVE_INPUT")
String The output (masked) value case enforcing. Enum values: - PRESERVE_LOOKUP_FILE - use the unmodified replacement value.
- 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.
maxLengthOfMaskedName (optional, default=0)
Integer Should be a non-negative number. The output (masked) value is forcibly trimmed to that length (by the number of characters).
maxNumberNames (optional, default=2, minimum=1, maximum=4)
Integer
Defines the max number of names to be masked and returned. The rest are removed.