Skip to main content

AML Screening API - Detailed Documentation

The AML Screening API provides functionality for screening individuals against sanctions, politically exposed persons (PEP), and other risk lists.

API Playground:

You can try the check individual endpoint here.

Endpoints Overview

  1. Check Individual: Screen an individual against AML datasets (PEP, sanctions, and related lists).
  2. Ongoing Monitoring:
    • Register Individual
    • Register Entity
    • Remove Search Profile

Authentication

To access the Address Verification API, authentication is required. A Bearer Token must be included in every request.
  • Tokens are valid for 60 minutes and must be refreshed after expiration.
  • Refer to the Authentication for detailed steps on obtaining a token.
  • Include the token in the Authorization header as follows:
Authorization: Bearer YOUR_ACCESS_TOKEN

API Base URL

Production:

Sandbox:


1. Check Individual

Endpoint

POST /aml/checkIndividual

Description

Checks an individual against AML datasets (e.g. PEP and sanctions).
You supply a name, optional date of birth, and search constraints (datasets, countries, threshold, matching mode) and receive a detailed profile for the best match, when found.

Required Headers

Request Body Parameters

The datasets parameter is a comma-separated string. Available options:
  • PEP – Politically Exposed Persons (all)
  • PEP-CURRENT – Only current PEPs
  • PEP-FORMER – Only former PEPs
  • PEP-LINKED – PEP by association / linked persons
  • SAN – Sanctioned (all)
  • SAN-CURRENT – Only current sanctions
  • SAN-FORMER – Only former sanctions
  • INS – Insolvency lists
  • RRE – Reputational Risk Exposure
  • DD – Disqualified Directors
  • POI – Profiles of Interest
  • REL – Regulatory Enforcement Lists
  • GRI – Gambling Risk Intelligence

Example Request

Response Structure

The response returns a JSON object containing a single person profile (the best match) from the AML check.

Address object

Alias object

Contact entry object

Evidence object

POI entry object

Position object fields:

Sanctions object

The sanEntries object groups sanctions information by status. For example:
  • current – active sanctions
  • former – historical sanctions, if provided by the data source
Each entry in sanEntries.current (or former) has the following structure:Sanction event fields:Sanction regime fields:

GRI entry object

REL entry object

REL events fields:

RRE entry object

RRE events fields:

Linked individual object

Linked business object

Response Codes

Example Response

Below is a trimmed example response showing the overall structure returned. The real payload can contain many more linked entities, evidences, and positions.

2. Ongoing Monitoring

You will be given a “Monitoring_Group_Id” that you will use to register an individual or business profile to. The registered profile will be screened on a regular basis as per the monitoring rules set in the monitoring group configuration,

2.1 Register Individual

Endpoint

POST /aml/ongoingMonitoring/registerIndividual

Status

This endpoint will allow you to register an individual profile for ongoing AML monitoring (periodic re-screening). you will need to provide the Monitoring_Group_Id that you received from IDCanopy, along with the individual’s name and date of birth and country information. The individual will then be screened on a regular basis as per the monitoring rules set in the monitoring group configuration

Required Headers

Request Body Parameters

Example Request

Response Structure

The response returns a JSON object containing the subscription details for the registered individual..

Example Response


2.2 Register Entity

Endpoint

POST /aml/ongoingMonitoring/registerEntity

Status

This endpoint will allow you to register a legal entity (company, organisation) for ongoing AML monitoring. you will need to provide the Monitoring_Group_Id that you received from IDCanopy, along with the company/organization’s name and country information. The company/organization will then be screened on a regular basis as per the monitoring rules set in the monitoring group configuration

Required Headers

Request Body Parameters

Example Request

Response Structure

The response returns a JSON object containing the subscription details for the registered company/organization.

Example Response


2.3 Remove Search Profile

Endpoint

POST /aml/ongoingMonitoring/removeSearchProfile

Status

This endpoint will allow you to remove an existing monitoring profile from ongoing AML monitoring for either an individual or a company/organization. To delete a monitoring profile, you will need to provide the Monitoring_Group_Id that you received from IDCanopy, along with the subscriptionId of the profile you want to remove.

Required Headers

Request Body Parameters

Example Request

2.4 Query Monitoring Results

Endpoint

GET /aml/ongoingMonitoring/getMonitoringResults/{Monitoring_Group_Id}/person/{subscriptionId} for individuals or
GET /aml/ongoingMonitoring/getMonitoringResults/{Monitoring_Group_Id}/entity/{subscriptionId} for companies/organizations

Status

You can query the monitoring results via the endpoints above for either an individual or a company/organization that you have registered for ongoing monitoring.

Required Headers

Response Structure

The response returns a JSON object containing the monitoring results for the specified subscription ID, including any matches found during the ongoing monitoring process.
The currentStatus field indicates the current status of the match found during ongoing monitoring. Possible values include:
  • open – indicates that the alert requires review
  • true-positive – Indicates that the alert is closed and that the profile was matched correctly
  • false-positive – Indicates that the alert is closed and that the profile was matched incorrectly
  • discarded – Indicates that the profile in the alert no longer matches the subscription due to the changes in the profile, subscription, or the follow list.

Example Response