Screening Configurations
Before we get started with specific APIs there are some configurations which are applicable to all APIs that changes behavior of the APIs as below :
Screening Modes
Screening can be performed one time or on an ongoing basis, based on the use case. For that purpose, there are two modes possible as below.
| Field | Description |
|---|---|
| SCREENING | Used to select rules for one-time screening from settings |
| MONITORING | Used to select rules for scheduled ongoing monitoring from settings |
Mode is passed as a parameter while making the API call. How to pass is mentioned with each API.
Screening Types
There is only one single Screening API which supports the following three modes:
| Field | Description |
|---|---|
| SCREEN_ONLY_RESPONSE | Screens the user and only includes the alert details in the response |
| SCREEN_AND_RAISE_ALERT | Screens the user and raise an alert, which would then be visible on the case manager dashboard. |
| SCREEN_RAISE_ALERT_AND_MONITOR | Screens the user, raises an alert, and marks the user for ongoing monitoring |
Screening type is passed as a parameter while making the API call. How to pass is mentioned with each API.
Response Options
Depending on the use case a compact or detailed response can be requested. Click below to see a sample Compact and Detailed response for your reference.
| Field | Description |
|---|---|
| COMPACT | Provides basic response data (risk level, alert counts) |
| DETAILED | Provides detailed match data in the response, along with the number of alerts and a summary of the alert details. |
Compact Response
The compact response provides basic information about the screening result:
{
"risk_level": "LOW",
"is_alert_generated": false,
"found": true,
"total_alerts": 1,
"low_severity_alerts": 1,
"high_severity_alerts": 0,
"medium_severity_alerts": 0
}
8.2. Detailed Response
The detailed response includes the compact response fields plus detailed information about matches:
{
"risk_level": "LOW",
"is_alert_generated": false,
"found": true,
"total_alerts": 1,
"low_severity_alerts": 1,
"high_severity_alerts": 0,
"medium_severity_alerts": 0,
"low_alert_details": [
{
"severity": "LOW",
"fuzzy_match_score": 100.0,
"source_name": "MNRL"
}
],
"high_alert_details": [],
"medium_alert_details": []
}
8.3. Field Definitions
| Field | Data Type | Description |
|---|---|---|
| risk_level | ENUM | LOW/MEDIUM/HIGH denotes the risk of this customer |
| is_alert_generated | BOOLEAN | True if alert generated to dashboard else false |
| found | BOOLEAN | True if match found else false |
| total_alerts | INTEGER | Count of total number of matches found |
| low_severity_alerts | INTEGER | Count of low severity alerts found |
| high_severity_alerts | INTEGER | Count of high severity alerts found |
| medium_severity_alerts | INTEGER | Count of medium severity alerts found |
| low_alert_details | ARRAY | Details of low severity alerts (only in DETAILED response) |
| high_alert_details | ARRAY | Details of high severity alerts (only in DETAILED response) |
| medium_alert_details | ARRAY | Details of medium severity alerts (only in DETAILED response) |
---
Match Scoring System
DigiShield uses a sophisticated fuzzy matching algorithm to determine the likelihood of a match between submitted user details and entities in the screening databases. A sample match score is represented as a value between 0 and 100, where the score is directly proportional to the risk.
| 100 | Exact Match |
|---|---|
| 99-95 | Very high confidence match |
| 94-90 | High confidence match |
| 89-80 | Moderate confidence match |
| Below 80 | Low confidence match |
Threshold Configuration
You can configure the minimum threshold for raising alerts using the cut_off_threshold parameter:
- Default value is “0”, however this is defined in the search node.
- Recommended range is 75-90 depending on your risk appetite
- The lower the threshold, the higher the number of false positives or alerts
- Lower thresholds increase sensitivity but may generate more false positives
- Higher thresholds reduce false positives but may miss borderline matches
---
User Details
Mandatory or Required Fields
The following fields are mandatory for all requests: When the
| Field | Type | Length | Description |
|---|---|---|---|
| client_id | string | 36 | Unique identifier for the user |
| name | string | 50 | Name of the user |
Optional Fields
While only client_id and name is strictly required, providing more user details improves the accuracy of screening results. The following fields are recommended:
- name
- pan (for Indian users) or identification number
- dob (Date of Birth)
- nationality
- gender
- address
Field Specifications
The API supports an extensive list of user details fields. The complete list with field types, length restrictions, and descriptions can be found in the below section of this document.
Searchable Fields
The following fields are used for matching against AML databases:
- name (primary matching field)
- aliases/alternate names
- date of birth (range is supported)
- gender
- nationality
- identification numbers (PAN, passport, etc.)
- address components
Including these fields improves match accuracy and reduces false positives.