Semarchy REST Client + Excel Matching Solution
Using Semarchy's REST client, potential matches can be validated from an Excel spreadsheet by using queryPotentialMatches.
Business Use Case: External business users (no direct access to Xdm hub) want to validate if provided member data matches existing data in the hub. This is a "validation-only" procedure, so no data will be saved/committed during processing. External users will provide Semarchy Xdm DataStewards a spreadsheet containing data to be validated. Once validated, the enhanced data is sent back to the originating requestor.
Our solution is based upon the Customer B2C model. Customers wishing to implement this solution should complete the Customer B2C tutorial as a prerequisite. Datasets provided in the Customer B2C tutorial are needed in order for this solution to work, and should be imported into the application once the new model (attached) is deployed. The provided solution extends the basic functionality of the Customer B2C model by incorporating a REST client, the main object used. Additionally, several custom model objects were created in order to support use case requirements. Our documentation includes a brief explanation of the individual components used, as well as the modified Customer B2C model and Rest Client .json file. Import the model and REST Client file (both attached to the Question section) in order to implement this solution. The intended purpose of the solution is to provides guidance on implementing the Semarchy REST Client to support Matching operations.
Solution Main Components
1. REST Client
2. DetectMatches REST Client Enricher. Enricher is configured to call the "detect matches" REST Client. Inputs are load_id and source_email. Outputs is HighestMatchScore. No job is run with this enricher, it runs on the fly during Stepper. Highest Match Score attribute is populated using REST Client. A value of "0" indicates no match, while a non-zero value represents the match score of the best match.
3. ExternalMatch Stepper contains a step trigger (HighestMatchScore) which calls our DetectMatches REST Client enricher. Stepper contains Job "INTEGRATE NONE", which has no associated tasks. The purpose for this job is to act as a failsafe against anything being processed after data is imported for validation. If a used clicks the "Finish" button after import, this empty job will ensure the validated data is not saved into the hub and instead will simply be discarded.
Solution In Action
2. Highest Match Score attribute is added to the view by the REST Client, and values are populated based on the highest match score for each Source Email. Match was found for the first member, but not the second (email@example.com). Clicking on the Finish button will not result in data being committed to the hub. The view can now be exported to a new Excel spreadsheet and sent back to the original requestor, thus completing user requirements.