API reference
API Endpoint Reference
- Base URL
https://api.eupeak.io- Version
/v1- Auth
Authorization: Bearer ek_live_YOUR_KEY
POST /v1/screen
Screen an entity or person against all configured sources.
Request body
query string required
type string optional "entity" (default) | "person"
options object optional
threshold number Min match score 0–1 (default 0.5)
sources string[] Limit to specific source IDs
include_adverse_media boolean Requires Professional+ (default true)Response 200
id string
entity string
risk_score integer 0–100
risk_level string "low" | "medium" | "high" | "critical"
flags array (see Flag object below)
sources_queried string[]
sources_matched string[]
cache_hit boolean
duration_ms integer
timestamp string ISO 8601Flag object
type "sanctions" | "pep" | "watchlist" | "adverse_media"
source string e.g. "ofac_direct" | "opensanctions" | "namescan"
list string e.g. "SDN" | "EU_CONSOLIDATED"
match_score number 0–1
details object Source-specific raw dataErrors
| Code | Meaning |
|---|---|
401 | Invalid or missing API key |
402 | Monthly screening limit reached |
422 | Query too short (< 2 chars) or too long (> 500 chars) |
429 | Rate limit exceeded (100 req/min) |
500 | All sources failed |
GET /v1/screen/:id
Retrieve a past screening by UUID. Same response schema as POST /v1/screen. Retained for 24 months.
GET /v1/usage
Current month usage for the authenticated API key.
tier string
monthly_limit integer
current_month
count integer
remaining integer
reset_date string ISO 8601POST /v1/webhooks
Register a webhook for async event delivery.
Request body
url string required Must be HTTPS
events string[] optional ["screening.complete"] (default)Response
id string Webhook UUID
secret string HMAC signing secret — shown once onlyDELETE /v1/webhooks/:id
Deactivate and remove a webhook. Response: 204 No Content.
GET /v1/health
Operational status of all sources. No authentication required.
status "ok" | "degraded" | "down"
sources object Per-source "up" | "slow" | "down"
cache "up" | "down"
latency_ms integer