Integrate real-time screening against all major sanctions watchlists directly into your application. One endpoint. All lists. JSON in, JSON out.
Sub-second response times. Screen a name against all active watchlists and get match scores back immediately.
OFAC SDN, OFAC Consolidated, BIS, Canada OSFI, UK HM Treasury, EU, and UN Security Council — one call covers all.
Every result includes a 0–100 match score so your system can triage true positives from noise automatically.
Submit up to 500 names per request. Ideal for onboarding flows, overnight runs, or portfolio re-screening.
HTTPS-only. Customer data is never stored on our servers. API key authentication on every request.
Use the returned search key to pull full detail reports in XML, PDF, XLS, or JSON for audit trail purposes.
Start free — no credit card required. Upgrade to a paid plan when you're ready.
429 Too Many Requests response. Your client should implement exponential backoff and retry. Requests are never silently dropped.Register for a free trial — your API key and Account ID are shown immediately in Settings after login.
Send a JSON body to POST /api/v1/search with the name to screen. Pass your API key in the X-Api-Key header.
Parse matchScore, possibleMatches, and use searchKey to pull a full report if needed.
// POST https://sanctionsanalyzer.com/api/v1/search // Headers: X-Api-Key: sa_your_key_here // Content-Type: application/json { "name": "John Smith", "dob": "1980-01-15", // optional "country": "Iran", // optional "dataType": 0, // 0 = auto-detect (default) "listsToSearch": 1 // 1 = OFAC SDN only } // Response { "hit": true, "score": 87, "matchCount": 2, "matches": [ { "name": "SMITH, John Robert", "type": "Individual", "program": "SDGT", "score": 87, "entityNumber": "7379" } ], "searchKey": 118408677, "searchedAt": "2026-04-29T14:30:00Z" }
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| POST | /api/v1/search |
Screen a single name. Returns hit, score, matchCount, and full match details. Auto-detects individual vs. entity. |
X-Api-Key |
| GET | /api/v1/ping |
Health check. Returns API status, your account ID, server timestamp, and version. Use to verify your key is working. | X-Api-Key |
| POST | /api/v1/batch |
Screen up to 500 names in one request. Returns per-record results. Growth+ plans. Coming soon. | X-Api-Key |
Pass your API key in the X-Api-Key request header — not in the body.
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | required | Full name to screen. Pass the complete name as a single string — e.g. "John Robert Smith" or "Iran Petrochemical Commercial Co". |
| dob | string | optional | Date of birth. Format: YYYY-MM-DD. Partial dates (year only) accepted. |
| street | string | optional | Street address. |
| city | string | optional | City. |
| state | string | optional | State or province. |
| postalCode | string | optional | Postal / ZIP code. |
| country | string | optional | Country name (e.g. "United Kingdom"). |
| dataType | integer | optional | 0 = auto-detect (default), 1 = Person, 3 = Entity/Company. See Data Types tab. |
| listsToSearch | integer | optional | Which sanctions lists to screen against. Default 1 (OFAC SDN). See Lists tab. |
| Code | Lists Searched |
|---|---|
| 0 | All lists — broadest coverage (recommended) |
| 1 | OFAC SDN only |
| 2 | U.S. lists only (OFAC SDN + OFAC Consolidated + BIS) |
| 3 | Non-U.S. lists only (Canada, UK, EU, UN) |
| 4 | BIS (Bureau of Industry and Security) only |
| 5 | OSFI / Canada only |
| 6 | UK HM Treasury only |
| 7 | EU Consolidated only |
| 8 | UN Security Council only |
| Code | Data Type | Notes |
|---|---|---|
| 1 | Person | Individual / natural person |
| 2 | Entity | Company, organization, vessel |
| 3 | Person or Entity | Searches both — use when unsure (default) |
| 41 | Driver's License Number | |
| 42 | ID Number | National ID, SSN, etc. |
| 43 | Passport Number | |
| 44 | VIN / Vessel / Aircraft Number | |
| 45 | Electronic Address | Email, IP address |
| 49 | Other / Unknown |
| Field | Type | Description |
|---|---|---|
| hit | boolean | true if any matches were found. |
| score | integer | Highest match score across all hits (0–100). Score ≥ 85 warrants manual review. |
| matchCount | integer | Number of distinct matching entities returned. |
| matches[].name | string | Name of the matched entity as it appears on the sanctions list. |
| matches[].type | string | Entity type — Individual or Entity. |
| matches[].program | string | Sanctions program code (e.g. SDGT, IRAN, DPRK). |
| matches[].score | integer | Match score for this specific hit (0–100). |
| matches[].entityNumber | string | OFAC entity number for the matched record. |
| searchKey | integer | Unique key for this screening session — retain for audit records. |
| searchedAt | string | UTC timestamp of the search in ISO 8601 format. |
Fill in the form to build a request. Without an API key the demo returns a sample response.