Screening inside your own onboarding flow
A documented REST API, signed webhooks and official SDKs. Sub-100 ms response and a contractual 99.9% uptime.
Get a sandbox key87 ms
Median /v1/screen
99.9%
Contractual SLA
3
Official SDKs
Performance and accuracy figures shown on this site are measured in controlled test environments on representative datasets. Real results vary with data quality, list configuration and volume. The only binding commitments are those stated in the service agreement.
{
"screening_id": "scr_8839210045x",
"name": "Nordwind Handels GmbH",
"entity_type": "organization",
"score": 0.94,
"severity": "critical",
"matches": [
{ "list": "EU_CFSP", "reference": "2023/1214#118", "confidence": 0.41 }
],
"case_id": "ALT-40921",
"screened_at": "2026-08-16T14:32:07Z"
}Every response carries a case_id — the file already exists
Section 02 · API reference
Four endpoints cover the whole cycle
| Requirement | Parameter | Type | Description |
|---|---|---|---|
| required | name | string | Entity name to screen |
| required | entity_type | string | individual · organization |
| optional | lists | array | sanctions · pep · adverse_media |
| optional | birth_date | string | Date of birth (YYYY-MM-DD) |
| optional | country | string | ISO 3166-1 alpha-2 |
| Requirement | Parameter | Type | Description |
|---|---|---|---|
| required | screening_id | string | Unique screening identifier |
| Requirement | Parameter | Type | Description |
|---|---|---|---|
| required | entities | array | Array of entity objects |
| optional | callback_url | string | Webhook for completion notice |
| Requirement | Parameter | Type | Description |
|---|---|---|---|
| required | entity_id | string | Your internal identifier |
| required | name | string | Entity name |
| optional | alert_email | string | Email for change alerts |
Section 03 · Quick start
From key to first match, in two calls
The sandbox returns real matches against a fixed dataset, so you can write your assertions before there is a contract.
curl -X POST https://api.xpectra.io/v1/screen \
-H "Authorization: Bearer $XPECTRA_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Nordwind Handels GmbH",
"entity_type": "organization",
"lists": ["sanctions", "pep", "adverse_media"],
"country": "DE"
}'{
"event": "monitor.match_found",
"entity_id": "cust_10421",
"list": "OFAC_SDN",
"severity": "critical",
"case_id": "ALT-41077",
"signature": "sha256=9f2c…",
"occurred_at": "2026-08-16T14:32:07Z"
}Verify signature with HMAC-SHA256 before trusting the payload
pip install xpectra
npm install @xpectra/sdk
gem install xpectra
Section 04 · Library
Everything you will need
Each resource states its status and when it was last updated, so you know whether to trust it.
API reference
Complete reference for endpoints, authentication, rate limits and error codes.
OpenAPI 3.1 · updated weekly
not published yet · ask developer support
Integration guides
Step-by-step walkthroughs for Salesforce, HubSpot, onboarding flows and batch screening.
9 guides · 4 connectors
not published yet · ask developer support
Help center
FAQs, troubleshooting and answers to the questions that come up most.
searchable · EN · ES
not published yet · ask developer support
Changelog
Every API change with its date and deprecation policy. Twelve months notice on breaking changes.
RSS · last entry 12 Aug 2026
not published yet · ask developer support
Compliance blog
Regulatory updates, designation analysis and practice notes written by our compliance team.
weekly · no gating
not published yet · ask developer support
Status page
Real-time status per service, incident history and published post-mortems.
99.98% · trailing 90 d
not published yet · ask developer support
Stuck on the integration?
Talk to an engineer, not a form. Our developer support team answers within the same business day.