Integrate sanctions screening into your applications. Screen entities, set up continuous monitoring, and receive alerts via webhooks.
Create an API key in your organization settings at Settings → API Keys
curl -X POST https://sanctscan.app/api/v1/screen \
-H "Content-Type: application/json" \
-H "x-api-key: your_api_key" \
-d '{"name": "John Smith"}'All API requests require authentication using an API key. Include your API key in the x-api-key header.
curl -H "x-api-key: your_api_key" https://sanctscan.app/api/v1/screeningsKeep your API key secure
Never expose your API key in client-side code or public repositories. Use environment variables to store your key.
https://sanctscan.app/api/v1/screennameThe name of the entity to screen
entityTypeType of entity: 'person', 'business', or 'organization'
countryCountry code or name for better matching
birthDateDate of birth in ISO format (YYYY-MM-DD)
curl -X POST https://sanctscan.app/api/v1/screen \
-H "Content-Type: application/json" \
-H "x-api-key: your_api_key" \
-d '{
"name": "Viktor Sokolov",
"entityType": "person",
"country": "RU"
}'{
"success": true,
"data": {
"screeningId": "scr_abc123",
"entityId": "us_ofac:12345",
"entityName": "Viktor Sokolov",
"riskScore": 85,
"riskLevel": "high",
"confidence": 92,
"matchedSources": ["us_ofac", "eu_csl"],
"matchDetails": [
{
"dataset": "us_ofac",
"datasetLabel": "OFAC SDN",
"matchScore": 92,
"entity": {
"id": "us_ofac:12345",
"name": "Viktor SOKOLOV",
"entityType": "person",
"country": "Russia",
"programs": ["RUSSIA-EO14024"],
"listingDate": "2022-03-15"
}
}
],
"isMonitored": false
}
}/screeningspagePage number (default: 1)
pageSizeResults per page (default: 20, max: 100)
riskLevelFilter by risk level: 'low', 'medium', or 'high'
dateFromFilter screenings from this date (ISO format)
dateToFilter screenings up to this date (ISO format)
searchSearch by entity name
curl "https://sanctscan.app/api/v1/screenings?riskLevel=high&pageSize=10" \
-H "x-api-key: your_api_key"{
"success": true,
"data": [
{
"id": "scr_abc123",
"entityId": "us_ofac:12345",
"entityName": "Viktor Sokolov",
"query": "Viktor Sokolov",
"riskScore": 85,
"riskLevel": "high",
"matchedSources": ["us_ofac", "eu_csl"],
"isMonitored": true,
"timestamp": "2024-01-15T10:30:00Z"
}
],
"meta": {
"pagination": {
"page": 1,
"pageSize": 10,
"total": 42,
"totalPages": 5
}
}
}/screenings/{id}idThe screening ID
curl https://sanctscan.app/api/v1/screenings/scr_abc123 \
-H "x-api-key: your_api_key"/monitorsscreeningIdThe ID of a previous screening to monitor
riskThresholdAlert threshold for risk score changes (default: 30)
curl -X POST https://sanctscan.app/api/v1/monitors \
-H "Content-Type: application/json" \
-H "x-api-key: your_api_key" \
-d '{
"screeningId": "scr_abc123",
"riskThreshold": 50
}'{
"success": true,
"data": {
"id": "mon_xyz789",
"screeningId": "scr_abc123",
"entityName": "Viktor Sokolov",
"lastRiskScore": 85,
"lastRiskLevel": "high",
"riskThreshold": 50,
"isActive": true,
"createdAt": "2024-01-15T10:35:00Z"
}
}/monitorspagePage number (default: 1)
pageSizeResults per page (default: 20, max: 100)
curl https://sanctscan.app/api/v1/monitors \
-H "x-api-key: your_api_key"/monitors/{id}idThe monitor ID
curl -X DELETE https://sanctscan.app/api/v1/monitors/mon_xyz789 \
-H "x-api-key: your_api_key"{
"success": true,
"data": {
"id": "mon_xyz789",
"removed": true
}
}Configure webhooks in your organization settings to receive real-time notifications when monitored entities have status changes.
{
"event": "alert.created",
"timestamp": "2024-01-15T14:30:00Z",
"organization": {
"id": "org_abc123",
"slug": "acme-corp",
"name": "Acme Corporation"
},
"alert": {
"id": "alt_def456",
"monitorId": "mon_xyz789",
"entityId": "us_ofac:12345",
"entityName": "Viktor Sokolov",
"oldRiskScore": 45,
"newRiskScore": 85,
"oldRiskLevel": "medium",
"newRiskLevel": "high",
"oldLists": [],
"newLists": ["OFAC SDN"],
"timestamp": "2024-01-15T14:30:00Z"
}
}All errors follow a consistent format with a code and message.
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Name is required"
}
}| Code | Status | Description |
|---|---|---|
INVALID_API_KEY | 401 | Invalid or missing API key |
VALIDATION_ERROR | 400 | Invalid request parameters |
NOT_FOUND | 404 | Resource not found |
TIER_LIMIT_EXCEEDED | 403 | Monthly quota exceeded |
INTERNAL_ERROR | 500 | Server error |
We screen against the following major sanctions lists, updated daily.
| Source ID | Name | Region |
|---|---|---|
us_ofac | OFAC SDN List | US |
us_csl | US Consolidated Screening List | US |
eu_csl | EU Consolidated Sanctions List | EU |
uk_csl | UK Sanctions List | UK |
un_csl | UN Consolidated Sanctions List | UN |
au_dfat | DFAT Consolidated List | AU |