Screening an individual
The full AML check request, its datasets, the match threshold and the matching modes
Available on request. Contact IDCanopy for access; details may change.
Pending verification. The field names and the example below follow the data provider's model plus our design and are to be defined with the contract. Treat them as indicative, not as a contract.
Screening takes a name and optional date of birth, applies search constraints, and returns the best matching profile when one is found.
Endpoint
Path to be defined (separate from AML light).
Request
| Field | Type | Required | Description |
|---|---|---|---|
name | string | yes | Full name of the person. Best results with "lastnames, firstnames middlenames", for example "Example, Alex". Alternatively "firstnames middlenames lastnames" when the last name is not known precisely. |
dateOfBirth | string | no | Date of birth as YYYY-MM-DD or YYYY. Must be after 1900 and not in the future. |
countries | string | yes | Comma-separated two-letter ISO 3166-1 country codes, applied to both address and nationality, for example "NL,GB". |
datasets | string | no | Comma-separated datasets to search. Default "PEP,SAN". |
threshold | integer | no | Match score threshold, 75 to 100. Only profiles at or above it are returned. Default 85. |
matching | string | no | Name-matching algorithm: "fuzzy" (default, recommended) or "strict". Fuzzy finds likely matches; strict is more conservative and may miss a match when the exact name is not known. |
Pending verification: the source is inconsistent here; the contract will define it. This request table and the example below give
countriesas a comma-separated string, while the monitoring examples in the retired guide showcountriesas an array.
Datasets
| Value | Meaning |
|---|---|
PEP | Politically exposed persons, all |
PEP-CURRENT | Current PEPs only |
PEP-FORMER | Former PEPs only |
PEP-LINKED | PEPs by association, linked persons |
SAN | Sanctioned persons and entities, all |
SAN-CURRENT | Current sanctions only |
SAN-FORMER | Former sanctions only |
INS | Insolvency lists |
RRE | Reputational risk exposure |
DD | Disqualified directors |
POI | Profiles of interest |
REL | Regulatory enforcement lists |
GRI | Gambling risk intelligence |
The set of dataset values and their spellings are to be defined with the contract.
The default PEP,SAN does not include adverse media. Adverse media is the RRE dataset
(reputational risk exposure); add RRE explicitly when the search must cover it.
Example request
An example, not a contract.
{
"name": "Example, Alex",
"dateOfBirth": "1980-01-02",
"countries": "GB",
"datasets": "PEP,SAN",
"threshold": 90,
"matching": "fuzzy"
}Response
The response wraps a single person profile, the best match. It is not a list of every possible match.
| Field | Type | Description |
|---|---|---|
data | object | Wrapper for the person profile. |
data.type | string | Resource type, "persons" for individuals. |
data.id | string | Internal identifier of the profile. |
data.attributes | object | The profile fields: names, dates, nationalities, datasets, addresses, aliases, evidence, sanctions, PEP and the linked entries. See Hit records. |
data.links | object or null | Optional hypermedia links. |
Response codes
| Code | Description |
|---|---|
200 | A JSON object describing the best matching profile. |
400 | Missing or invalid parameters. |
401 | The caller is not authorized. |
500 | An internal server error. |
How to decide
A match is a potential hit for review, not a compliance decision. The check returns what the data
source holds; your own process decides what it means. The caller works from the returned profile
and its datasets and risk entries.
A response with no match is also a result. How the response signals that nothing matched is to be defined with the contract; the retired guide describes a single best match.
Test cases
Pending verification. No confirmed test person is published here.