How does match rules work with the D&B connector?

Question

I have two queries regarding the DnB match.

  • When I click on 'Get a Match'  to get a match from DnB what set of match rules are executed? Are the match Rules configured in L3 are used to get a match from the DnB source or there's a separate set of rules on which matching records from DnB are returned? If there's a separate set of Matching Rules how and where can we configure/modify them.

mceclip0.png

  • When I did 'Get a Match', I get a record from DnB having the same URI as the record for which 'Get a Match' was called. Can you please explain how this URI is populated?

 

Answer

DnB connector is designed to work with L3 configuration and the DTSS service
Specific attributes in the data model:

Attribute Tenant Required Operation Description
DUNSNumber CT, DT Y R/T, batch A most important attribute for DnB connector. Each entity type has to have such attribute to be a valid entity for processing by the connector. 
entityURI CT, DT Y Real-time match Part of match rule on DT for show/merge potential matches from DT to CT via DTSS service
         
AutoMatchFlag CT, DT Y Real time match Part of match rule for auto-merge potential matches from DT to CT via DTSS service
SuspectMatchFlag CT, DT Y Real-time match Part of suspect match rule for potential matches from DT to CT via DTSS service
VendorVerificationDate CT N R/T, batch The date of the last update the connector made
VendorVerificationStatus CT N R/T, batch The status of the last operation performed by the connector
 
       


The matchRules for DnB are defined in the DTSS subscription.   For example:

"synchronizationConfig": {
"entities": [
{
"types": [
"configuration/entityTypes/HCO"
],
"matchRules": [
"configuration/entityTypes/HCO/matchGroups/HCObyIMSID",
"configuration/entityTypes/HCO/matchGroups/HCObyNameAddress"
],
  •  You have a DnB connection defined for your tenant.
curl --location --request GET 'https://361-dnbconnector.reltio.com/b2bIntegration/config/tenants' \
--header 'Authorization: Bearer 19fb894d-64e7-42cc-b02e-821b9ae8c479' \
--header 'Content-Type: application/json' \
--header 'environmentUrl: https://mpe-01.reltio.com' \
--header 'tenantId: <tenantId>'

 
Response:

{ 
    "success": "OK", 
    "tenant": { 
        "environmentUrl": "https://mpe-01.reltio.com", 
        "tenantId": "<customerTenantId>" 
    }, 
    "dataTenant": { 
        "environmentUrl": "https://mpe-01.reltio.com", 
        "tenantId": "<dataTenantId>" 
    }, 
    "profile": "devtest" 
}
  •  We can see that we have defined your tenant as a DTSS customer tenant.  But, you will need to apply the subscription to the data tenant  
{
      "tenant_id": {
          "id": "<customerTenant>"
      },
      "oauth_end_point_url": "https://auth.reltio.com/oauth/token",
      "api_url": "https://mpe-01.reltio.com/reltio/api",
      "support_email": "john.smith@fresh.com",
      "created_date": "2022-03-21T15:07:58.534Z",
      "updated_date": "2022-03-21T15:08:29.588Z",
      "created_by": "gloria.faley@reltio.com",
      "updated_by": "gloria.faley@reltio.com",
      "id": "9oUYCzp0nocucJS",
      "subscribe_to": []
  }
  •  A subscription can be created using the API
POST {{URL}}/dtss/subscription 

 
Example of the request body
 

[ 
   { 
        "dataTenantId": { 
            "id": "<dataTenantId>" 
        }, 
        "customerTenantId": { 
            "id": "<customerTenant>" 
        }, 
        "bringGoldenRecord": true, 
        "bringInternalSources": [], 
        "tasksConfiguration": { 
            "onFinish": { 
                "consistencyReport": { 
                    "afterTasks": { 
                        "manual_copy": false, 
                        "manual_subscribe": false, 
                        "manual_sync": false 
                    }, 
                    "emails": [] 
                } 
            } 
        }, 
        "mappings": [], 
        "security": { 
            "metadataAndDataSecurity": { 
                "enabled": true, 
                "permissionConfig": [ 
                    { 
                        "uri": "configuration/entityTypes/Organization", 
                        "permissions": [ 
                            { 
                                "role": "ROLE_DNB_CONNECTOR", 
                                "filter": "equals(attributes.DtssCustomerTenantId, '9oUYCzp0nocucJS')", 
                                "access": [ 
                                    "READ", 
                                    "UPDATE" 
                                ] 
                            } 
                        ] 
                    } 
                ] 
            } 
        }, 
        "eventsConfiguration": { 
            "entityDeleted": { 
                "actionInCT": "IGNORE" 
            }, 
            "entityModified": { 
                "actionInCT": "ACTIVATE" 
            }, 
            "entityUnmerged": { 
                "actionInCT": "IGNORE" 
            }, 
            "entityMerged": { 
                "actionInCT": "IGNORE" 
            }, 
            "entityCreated": { 
                "actionInCT": "IGNORE", 
                "entityTypes": [] 
            }, 
            "entityMatch": { 
                "action": "ACTIVATE" 
            }, 
            "entityCrosswalkDeleted": { 
                "defaultActionInCT": "IGNORE", 
                "source": {} 
            }, 
            "relationCreated": { 
                "actionInCT": "IGNORE" 
            }, 
            "relationModified": { 
                "actionInCT": "ACTIVATE" 
            }, 
            "relationDeleted": { 
                "actionInCT": "IGNORE" 
            }, 
            "relationCrosswalkDeleted": { 
                "defaultActionInCT": "IGNORE", 
                "source": {} 
            } 
        }, 
        "synchronizationConfig": { 
            "entities": [ 
                { 
                    "types": [ 
                        "configuration/entityTypes/Organization" 
                    ], 
                    "action": "AUTOSUBSCRIBE", 
                    "matchRules": [ 
                        "configuration/entityTypes/Organization/matchGroups/ExactMatchByEntityURIConf9or10" <<<====  THIS IS A MATCHGROUP IN YOUR DATA TENANT
                    ], 
                    "thresholds": { 
                        "default": 1, 
                        "extendSubscription": false, 
                        "custom": [] 
                    } 
                } 
            ], 
            "dtSyncType": "REALTIME", 
            "ctSyncType": "REALTIME", 
            "relations": [] 
        }, 
        "importRelationsConfig": { 
            "defaultStrategy": "IMPORT_IF_ENTITIES_SUBSCRIBED", 
            "strategyPerRelationType": [] 
        }, 
        "groupContributors": true, 
        "fullImportLogESIndex": "dtss-full-import-log-index-default", 
        "autoRematch": true, 
        "hiddenDt": false, 
        "searchCtMetadata": false, 
        "endpointsConfig": { 
            "useSynchronizationConfig": false 
        }, 
        "validation": { 
            "strictValidation": false, 
            "strictDataTenantValidation": true, 
            "strictCustomerTenantValidation": true, 
            "strictMappingCheck": false 
        }, 
        "relationsSyncWithNullActiveness": false, 
        "partialOverrideForReference": false, 
        "logEntityUploadQueryForDebug": false, 
        "transformConfiguration": { 
            "goldenRecordConfiguration": { 
                "enddatingEnabled": false, 
                "enddatingReferenceEntitiesEnabled": false 
            } 
        } 
    } 
  ]
  •  You can see the MatchGroup rule that you can use in your subscription by using the API.
GET https://mpe-01.reltio.com/reltio/api/<dataTenant>/configuration/_noInheritance
  •  You can see the match mapping that has been defined by executing
GET: {dnbConnectorUrl}/config/profiles/{profile}/mappings/match
  •  You can see the enrichment mapping that has been defined 
GET: {dnbConnectorUrl}/config/profiles/{profile}/mappings/enrichment

 For further information about troubleshooting your DnB connector please refer to https://docs.reltio.com/dnb/troubleshootingguide.html
 
 

 

Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.