Skip to main content

API Reference

Complete reference documentation for the SanctionsWise Screening API.

Base URL: https://api.sanctionswise.orchestraprime.ai/v1

API Version: v1.0.0


Authentication​

All API requests require an API key passed in the x-api-key header:

curl -X POST "https://api.sanctionswise.orchestraprime.ai/v1/screen/entity" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"

Get your API key from AWS Marketplace or app.orchestraprime.ai.


Endpoints Overview​

EndpointMethodDescription
/v1/screen/entityPOSTScreen a single entity
/v1/screen/batchPOSTScreen up to 100 entities
/v1/entities/{id}GETGet entity details
/v1/listsGETList available sanctions lists
/v1/healthGETService health check

Response Objects​

Screening Response​

{
"screening_id": "SCR-20251210185252-2FFDC8AE",
"status": "potential_match",
"query": {
"name": "Vladimir Putin",
"entity_type": "individual",
"threshold": 0.60,
"lists_screened": ["ofac_sdn"]
},
"matches": [...],
"match_count": 10,
"timestamp": "2025-12-10T18:52:52.527387Z",
"processing_time_ms": 378,
"data_freshness": {
"last_update": "2025-12-10T17:26:38Z"
}
}

Match Object​

FieldTypeDescription
entity_idstringUnique SanctionsWise entity identifier
matched_namestringName that matched the query
confidence_scorenumberMatch confidence (0.0-1.0)
match_typestringHow the match was found
semantic_scorenumberSemantic similarity (if used)
entity_detailsobjectEntity information
source_evidenceobjectAudit trail information
identifier_evidenceobjectDocument match details (if applicable)

Match Types​

TypeDescription
exactDirect normalized name match
fuzzyFuzzy string similarity match
fuzzy+semanticFuzzy match enhanced by semantic similarity
semanticFound primarily via semantic search
identifier_confirmedMatch confirmed by document number

Source Evidence Object​

FieldTypeDescription
source_authoritystringIssuing authority (e.g., "US Treasury OFAC")
source_list_idstringList identifier (e.g., "ofac_sdn")
source_entry_uidstringOriginal entry ID in source list
last_updatedstringISO 8601 timestamp of last data update

Status Values​

StatusDescriptionAction Required
clearNo matches above thresholdNone - proceed with transaction
matchHigh-confidence match (≥95%)Block transaction, escalate
potential_matchMatches found requiring reviewManual review required

Error Responses​

400 Bad Request​

{
"error": "Field \"name\" is required and must be a string"
}

401 Unauthorized​

{
"message": "Unauthorized"
}

403 Forbidden​

{
"message": "Forbidden - Invalid API key"
}

429 Too Many Requests​

{
"message": "Rate limit exceeded",
"retry_after_seconds": 60
}

500 Internal Server Error​

{
"error": "Internal server error",
"message": "An error occurred processing your request"
}

Rate Limits​

TierRate LimitBurst LimitDaily Quota
Free1/sec5500
Starter5/sec205,000
Professional25/sec10025,000
Enterprise50/sec200100,000+

See Rate Limits for detailed information.


Next Steps​