Why is no match being found for my external match job?

Question

We have set 3 external only match rules in our L3 and are executing the external match API call but the API is not returning any matched entity in the response.

MatchRule :

configuration/entityTypes/Individual/matchGroups/05_F1_FullName_E_Org_29

Match API

POST https://<environment>.reltio.com/reltio/api/<tenantId>/externalMatch?bucket=<AWS S3 bucket>&s3Region=<S3 region>&path=<folder/input file>&pathOut=<output folder/output file>&awsAccessKey={{accessKey}}&awsSecretKey={{secretKey}}&entityType=<entityType>&tenantId=<tenantId>&rules=<match Rule>

Input Definition

{"uri":"0000000000006","type":"configuration/entityTypes/Individual","attributes":{"Status":[{"value": "Active"}],"LastName": [{"value": "AYCOCK"}],"FirstName":[{"value": "BETH"}],"RelatedOrganization": [{"value":{"CMDID": [{"value": "cmd_org_600099849"}],"Status":[{"value": "Active"}]}}],"Email":[{"value": {"Email":[{"value": "BETH.AYCOCK456@SALADOISD.ORG"}]}}]}}

We are expecting at least below uris from input file to match to existing entities in the tenant

input uri :0000000000006 , matchedUri :  guh4j6V

 

Answer

  • You can choose to publish the match rule for internal and/or external matching by selecting one of the following:
    • External - the match type is used to match data from an external file with the data in the tenant.
    • Internal - the match type is used to match the data within your tenant along with the match rules configured for the tenant.
    • blank - the match type is used to match data from an external file with the data in the tenant and match the data within your tenant along with the match rules configured for the tenant. (so basically external and internal).
  • Check the survivorship of the attribute definition that you are verifying.  In the case below, it contains configuration/entityTypes/Organization/attributes/Status as the primaryAttributeUri.  Therefore, we need to pass CMDID and Status parameter
{
"attribute": "configuration/entityTypes/Organization/attributes/CMDID",
"primaryAttributeUri": "configuration/entityTypes/Organization/attributes/Status",
"fallbackStrategies": [
{
"attribute": "configuration/entityTypes/Organization/attributes/CMDID",
"sourcesUriOrder": [
"configuration/sources/CDB",
"configuration/sources/Salesforce",
"configuration/sources/Reltio"
],
"fallbackStrategies": [
{
"attribute": "configuration/entityTypes/Organization/attributes/CMDID",
"survivorshipStrategy": "MinValue"
}
],
"fallbackUsingCriteria": "MORE_THAN_ONE",
"survivorshipStrategy": "SRC_SYS"
}
],
"fallbackUsingCriteria": "MORE_THAN_ONE",
"survivorshipStrategy": "OtherAttributeWinnerCrosswalk"
}
  • Pass 'Status' field in the payload for external match. This solves the ov-issue for FirstName, LastName,  and MiddleName.

  • Pass 'Status' field inside the RelatedOrganization attribute in the payload, change the survivorshipGroups mapping for RelatedOrganization from 'MORE_THAN_ONE' to 'ZERO_OR_MORE_THAN_ONE'. This solves the ov-issue for RelatedOrganization.CMDID.

  • Verify that there is a definite match between the internal MDM entity and external record
POST https://<environment>.reltio.com/reltio/api/<tenantId>/entities/_verifyMatches
?rules=configuration/entityTypes/Individual/matchGroups/05_F1_FullName_E_Org_29


Request Body:


{
"first": {
"uri": "entities/guh4j6V"
},
"second": {
"uri": "0000000000006",
"type": "configuration/entityTypes/Individual",
"attributes": {
"Status": [
{
"value": "Active"
}
],
"LastName": [
{
"value": "AYCOCK"
}
],
"FirstName": [
{
"value": "BETH"
}
],
"RelatedOrganization": [
{
"value": {
"CMDID": [
{
"value": "cmd_org_60049"
}
], 
"Status": [
{
"value": "Active"
}
]
}
}
],
"Email": [
{
"value": {
"Email": [
{
"value": "BETH.AYK456@SALAD.ORG"
}
]
}
}
]
}
}
}
Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.