Sanctions Screening API
Screen a name against sanctions and watchlist records with a single Smart Search call. Pass one or more keywords, receive scored, highlighted matches with alias, country, source, and provenance data.
Base URL · Auth · ExamplesIntroduction
The Sanctions Search API exposes a Smart Search endpoint that queries sanctions and watchlist records for a given tenant. Each request is authenticated with an API key and scoped to a Tenant Identifier. The response returns an array of matches, each carrying the underlying record data, highlighted fields, and a relevance score.
Requirements
Two values are required to call this API.
- Obtain your API Key and supply it on every request in the x-api-key header.
- Obtain your Tenant Identifier and use it as the
tenantIdentifierpath segment in the request URL.
Smart Search
Run a sanctions Smart Search for a tenant. The searchKeyword query value accepts a single keyword or multiple keywords separated by semicolons.
| Name | In | Type | Description |
|---|---|---|---|
tenantIdentifier | path | string | The Tenant Identifier the search is scoped to. |
searchKeyword | query | string | A single keyword or multiple keywords separated by semicolons. |
x-api-key | header | string | Your API key. Required on every request. |
Riad Salam;ACME Ltd.Request Body
Schema: SmartSearchSanctionQuery. All fields are optional.
| Name | In | Type | Description |
|---|---|---|---|
country | body | string[] | Optional list of countries to filter by. |
list | body | string[] | Optional list to filter by. |
fromDate | body | datetime | Optional start of the date range. |
toDate | body | datetime | Optional end of the date range. |
Response Schema
A 200 success response returns Content-Type application/json with schema ComplianceSearchFilter. The body is an array of objects. Each object contains a data record, a highlights array, and a numeric score.
| Name | In | Type | Description |
|---|---|---|---|
data | item | object | The matched record. Fields listed below. |
highlights | item | string[] | Fields or terms that matched the search. Required. |
score | item | number | Relevance score for the match. Required. |
The data object carries the record detail.
| Name | In | Type | Description |
|---|---|---|---|
id | data | string | Record identifier. Required. |
sanctionId | data | string[] | Sanction identifiers for the record. Required. |
common | data | string[] | Common names for the entity. Required. |
alias | data | string[] | Known aliases. Required. |
country | data | string[] | Associated countries. Required. |
address | data | string[] or null | Associated addresses. |
schema | data | string[] | Record schema classifications. Required. |
source | data | string[] | Source lists for the record. Required. |
checksum | data | string[] | Record checksums. Required. |
tenantId | data | string or null | Tenant the record belongs to. |
isPublic | data | boolean | Whether the record is public. Required. |
lastChange | data | string (date-time) | When the record last changed. Required. |
500 Server Error returns Content-Type application/json with schema ProblemDetails: type (string), title (string), status (int32), detail (string), and instance (string).Examples
Request example (cURL).
curl -X 'POST' \
'https://sanctions.assentify.com/api/Sanctions/SmartSearch/318e2ca7-fde8-4c47-bbcc-0c94b905630f?searchKeyword=Riad%20Salam' \
-H 'accept: text/plain' \
-H 'x-api-key: {API-KEY}' \
-H 'Content-Type: application/json' \
-d '{
"country": [],
"list": []
}'
Request body example (SmartSearchSanctionQuery).
{
"country": [],
"list": []
}
Response example (ComplianceSearchFilter).
[
{
"data": {
"id": "string",
"sanctionId": ["string"],
"common": ["string"],
"alias": ["string"],
"country": ["string"],
"address": ["string"],
"schema": ["string"],
"source": ["string"],
"checksum": ["string"],
"tenantId": "string",
"isPublic": true,
"lastChange": "2024-12-17T00:00:00Z"
},
"highlights": ["string"],
"score": 0
}
]
sanctions-example-response.json.