Question
We have added potential link found to SQS Queue but we aren't able to see potential match messages in SQS queue. As per our configuration, it should be able to extract potential match message in SQS queue. I have attached the screenshot of same. We are able to see other messages like entity creation, entity changed , entity removed.
Answer
POTENTIAL_LINK_FOUND is not POTENTIAL_MATCH. Your original defined problem in this ticket was that you were not seeing POTENTIAL_LINK_FOUND in the event queue. POTENTIAL_LINK_FOUND
andAUTO_LINK_FOUND
event types notify an external program to consider taking action on the event. You can select these events, which were previously only available from the streaming APIs, from the Type filter. You can use match rules to publish these events to the queue, where your external program can receive the event, retrieve and examine profiles, and take appropriate action.
Please review the documentation inhttps://docs.reltio.com/en/explore/get-a-crash-course/get-ready-to-turn-your-data-into-action/learn-about-multidomain-mdm/reltio-match-merge-and-survivorship/understanding-custom-rulesregarding whether custom match rules meet your requirement.
Please notice in the documentation the specific definition on the handler classes.
ThematchAction
object has four handler classes that can be called. The first two are the legacy handlers used by the ‘automatic’ and ‘suspect’ types. They are exposed for you to leverage if you wish. They are:
AutoMergeHandler
(issues a directive to merge the profile pair)SuspectMatchHandler
(issues a directive to queue the profile pair for review, which means to make them available as potential matches in the Hub)StreamingPotentialLinkActionHandler
(publishes the event,POTENTIAL_LINK_FOUND
)StreamingAutoLinkActionHandler
(publishes the event,AUTO_LINK_FOUND
)
You should take the following steps to complete the enablement.
- You need define the following custom match actions.
"matchActions": [
{
"name": "potential_relation",
"mapping": [
{
"class": "StreamingPotentialLinkActionHandler"
},
{
"class": "SuspectMatchHandler"
}
]
},
{
"name": "automatic_link",
"mapping": [
{
"class": "StreamingAutoLinkActionHandler"
}
]
}
],
- Change the L3 match rule (to match your definition of a match rule). Rather than having "type": "suspect" as seen below.
{
"uri": "configuration/entityTypes/HCO/matchGroups/Rule_11_MCMDM",
"label": "MCMDM|Rule 11. Not Exact (MCEntityType),Exact(Premise,Zip5),Fuzzy(AddressLine1),Equals(Address.VerificationStatus =Verified)",
"type": "suspect",
"scope": "ALL",
"useOvOnly": "true",
"rule": {
"matchTokenClasses": {
You should change type to "potential_relation" rather than suspect
{
"uri": "configuration/entityTypes/HCO/matchGroups/Rule_11_MCMDM",
"label": "MCMDM|Rule 11. Not Exact (MCEntityType),Exact(Premise,Zip5),Fuzzy(AddressLine1),Equals(Address.VerificationStatus =Verified)",
"type": "potential_relation",
"scope": "ALL",
"useOvOnly": "true",
"rule": {
"matchTokenClasses": {
- Perform the verifyMatch API in POSTMAN with two entities that you believe should match one of your custom match rule <refer to https://docs.reltio.com/en/explore/get-going-with-apis-and-rocs-utilities/reltio-rest-apis/model-apis/potential-matches-api/verifying-matches).
curl --location --request POST 'https://<environment>.reltio.com/reltio/api/<tenantId>/entities/_verifyMatches?rules=<match rule>' \
--header 'Authorization: Bearer 33d1c1c3-5b64-4ac0-93bf-e05f18386ba9' \
--header 'Content-Type: application/json' \
--data-raw '{
"first": {
"uri": "entities/<entity one>"
},
"second":{"uri":"entities/<entity two>"}
}'
- Verify that you can now see a valid match.
Comments
Please sign in to leave a comment.