Utvecklar-API
Bädda in compliancescreening i valfritt arbetsflöde
Din onboardingpipeline, betalningsgateway och ditt CRM hanterar redan riskbeslut varje dag. ScreenVeritAI:s API låter dig bädda in sanktionsscreening, PEP-kontroller, negativ mediaanalys och UBO-kartläggning direkt i dessa arbetsflöden — inga manuella sökningar, ingen kopiera-klistra, inga complianceluckor mellan system. Ett API-anrop startar samma AI-agent som driver vår plattform, och strukturerad JSON returneras redo för din beslutsmotor.
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"entity_name": "Acme Trading LLC",
"entity_type": "company",
"country": "AE",
"search_type": "sanctions_check"
}'
# 202 Accepted
# { "search_id": "SEARCH_ID", "status": "processing",
# "estimated_time_seconds": 15 }The request
One POST call, then your poll loop.
Entity name, type, country, screening type. The call returns 202 with a search_id and an ETA, and the agent works in the background — you poll for the result rather than hold the connection open.
entity_nameRequired, 1-500 characters. Alias-aware matchingentity_type"person", "company" or "any" (default "any")countryOptional context field; does not filter Quick Check matchingsearch_type"sanctions_check", "adverse_media" or "full_search"
The response
Structured JSON. Findings, not a score.
Core-jurisdiction fields and per-source arrays, plus criminal-watchlist and PEP/RCA findings. Review the available markdown, identifiers and source references; the response does not provide a numeric risk score.
{
"id": "SEARCH_ID",
"entity_name": "Acme Trading LLC",
"entity_type": "company",
"status": "completed",
"search_type": "sanctions_check",
"ofac_sanctions": "## OFAC Sanctions Findings\n\n**Status:** *Sanctioned*\n\n**Details:**\n- **Matched entity:** ACME TRADING LLC\n- **Authority:** US Treasury OFAC\n...",
"eu_sanctions": "## EU Sanctions Findings\n\n**Status:** *No relevant listing found*\n...",
"sanctions_sources": [
{ "source_id": "ofac_sanctions", "title": "OFAC Sanctions",
"authority": "US Treasury OFAC", "hit_count": 1 },
{ "source_id": "eu_sanctions", "title": "EU Sanctions",
"authority": "", "hit_count": 0 }
],
"criminal_watchlists": null,
"pep": null,
"news_summary": null,
"final_report": null,
"created_at": "2026-09-04T09:20:03.771000+00:00",
"completed_at": "2026-09-04T09:20:19.088000+00:00"
}"ofac_sanctions"One markdown field per jurisdiction; read the *Status:* line"sanctions_sources"source_id, title, authority, details, hit_count per source"criminal_watchlists"Markdown when matched, null when nothing matched"pep"Markdown when matched, null when nothing matched"news_summary"Adverse-media report on adverse_media and full_search"status"completed when done; error_* on failure
API reference
Three calls cover a screening integration: queue it, poll it, or hand over a file.
POST/api/v1/searchQueue a screening run. Returns immediately with a search_id; the work happens in the background.202 Accepted
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"entity_name": "Acme Trading LLC", "entity_type": "company",
"country": "AE", "search_type": "sanctions_check"}'{ "search_id": "SEARCH_ID", "status": "processing",
"message": "Search queued successfully. Poll the GET endpoint for results.",
"estimated_time_seconds": 15 }GET/api/v1/search/{search_id}Poll for the result. Terminal status is completed; failures land in an error_* status.200 OK
curl https://screenveritai.com/api/v1/search/SEARCH_ID \
-H 'X-API-Key: YOUR_API_KEY'{ "id": "SEARCH_ID", "status": "completed", "search_type": "sanctions_check",
"ofac_sanctions": "## OFAC Sanctions Findings ... *Sanctioned* ...",
"eu_sanctions": "... *No relevant listing found* ...",
"sanctions_sources": [{ "source_id": "ofac_sanctions", "hit_count": 1 }],
"criminal_watchlists": null, "pep": null }POST/api/v1/batchUpload a CSV or XLSX with a name column — up to 100 rows and 2 MB. Poll the job, then export the CSV.202 Accepted
curl -X POST https://screenveritai.com/api/v1/batch \
-H 'X-API-Key: YOUR_API_KEY' \
-F 'file=@portfolio.csv'{ "job_id": "JOB_ID", "total_rows": 100, "credits_charged": 100,
"search_type": "sanctions_check", "status": "pending",
"message": "Batch job created successfully. Poll the GET endpoint for status." }Integration patterns
The API sits between data entry and decision — wherever you need a risk signal.
Customer onboarding
- Customer signup
- POST
/api/v1/search - Poll until completed
- Approve / hold
Payment processing
- Transaction init
- POST
/api/v1/search - Poll until completed
- Release / hold
CRM re-screen
- Record updated
- Your scheduler fires
- POST
/api/v1/search - Write result back
Bygga själv kontra köpa
| Aspekt | Bygga internt | ScreenVeritAI API |
|---|---|---|
| Tid till produktion | 6–12 månader för att hämta listor, bygga matchningslogik och hantera specialfall | Dagar att integrera; produktionsklart från första API-anropet |
| Sanktionslisttäckning | Manuell inmatning av varje listformat; löpande underhåll när scheman ändras | Varje stor källa, underhållen och uppdaterad kontinuerligt — OFAC, EU, FN, UK och fler |
| Matchningsnoggrannhet | Anpassad fuzzy matching kräver NLP-expertis och kontinuerlig finjustering | AI-agent med fuzzy matching, translitterering, aliasupplösning och fonetiska algoritmer |
| PEP och negativ media | Separata dataleverantörer, separata integrationer, separata budgetar | PEP, negativ media och UBO-data ingår i samma API-svar |
| Löpande underhåll | Dedikerat ingenjörsteam för listuppdateringar, schemaändringar och falskt-positiv-finjustering | Helt hanterat — listuppdateringar, modellförbättringar och infrastruktur sköts åt dig |
| Revisionsspår | Bygg din egen loggning, bevisgenerering och bevarandeinfrastruktur | Tidsstämplade bevispaket med källreferenser och beslutsmotivering ingår |
Fyra steg till produktion
Hämta din API-nyckel
Skapa en scoped API-nyckel från din ScreenVeritAI-instrumentpanel. Tilldela behörigheter — search:read, search:write, batch:read, batch:write — för åtkomst med minsta privilegium.
Integrera ändpunkten
Lägg till ett enda POST-anrop i ditt onboarding-, betalnings- eller CRM-arbetsflöde. Skicka enhetsnamn, typ och land. API:et returnerar ett jobb-ID för asynkron hämtning av resultat.
Bearbeta resultat
Polla resultatändpunkten för strukturerad JSON — företagskontext, ägande, PEP, negativ media, sanktionssignaler och riskpoäng.
Övervaka och avisera
Konfigurera löpande övervakning för granskade enheter. När sanktionslistor uppdateras eller ny negativ media dyker upp skickar API:et aviseringar så att ditt system kan utlösa omscreening automatiskt.
Kom igång på minuter
Ett enda API-anrop returnerar ett komplett screeningresultat.
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"entity_name": "Acme Trading LLC", "country": "AE", "search_type": "sanctions_check"}'
# 202 Accepted
# { "search_id": "SEARCH_ID", "status": "processing", "estimated_time_seconds": 15 }curl https://screenveritai.com/api/v1/search/SEARCH_ID \
-H 'X-API-Key: YOUR_API_KEY'
# 200 OK
# { "id": "SEARCH_ID", "status": "completed",
# "ofac_sanctions": "## OFAC Sanctions Findings ... *No relevant listing found* ...",
# "criminal_watchlists": null, "pep": null }API-prestanda
€0.39
Quick Check per anrop, ingen plattformsavgift
202
HTTP-status när en sökning accepterats; resultatet hämtas sedan
EU
Driftas i Finland; lagrad data stannar i EU
Vanliga frågor om API-integration
Hur autentiserar jag API-förfrågningar?
Alla API-förfrågningar autentiseras med en API-nyckel som skickas i X-API-Key-headern. Nycklar skapas från din ScreenVeritAI-instrumentpanel med scoped behörigheter (search:read, search:write, batch:read, batch:write) för att tillämpa åtkomst med minsta privilegium.
Är API:et synkront eller asynkront?
Asynkront. Skicka in en förfrågan, få ett jobb-ID, hämta resultaten genom polling. Din pipeline blockerar aldrig.
Vilket svarsformat returnerar API:et?
Strukturerad JSON med fält för centrala jurisdiktioner och arrayer per källa samt fynd från efterlysningslistor och PEP/RCA. Granska tillgänglig markdown, identifierare och källhänvisningar. Svaret ger ingen numerisk riskpoäng.
Vilka hastighetsbegränsningar gäller?
Hastighetsbegränsningar tilldelas per prenumerationsnivå och tillämpas per API-nyckel. Svarsheaders inkluderar din aktuella gräns, kvarvarande kvot och tidsstämpel för återställning. Om du behöver högre genomströmning för massbearbetning accepterar batchändpunkten CSV/XLSX-uppladdningar för högvolymscreening.
Kan jag granska enheter i batch via API:et?
Ja. Batchändpunkten accepterar CSV- eller XLSX-filer med upp till 100 rader per förfrågan. Varje rad bearbetas som en individuell screening och resultat kan hämtas per rad eller som en komplett nedladdningsbar export när jobbet slutförs.
Hur sätter jag upp löpande övervakning via API:et?
Konfigurera övervakning efter en inledande screening. När listor uppdateras eller ny negativ media dyker upp flaggar övervakningen förändringen och aviserar dig i appen.
Vilken compliancedata ingår i varje screeningresultat?
Varje resultat inkluderar sanktionsmatchningar mot varje stor källa, PEP-status med familje- och närståendekopplingar, negativa media-träffar med flerspråkiga källhänvisningar, UBO-ägardata, risknivåklassificering och ett tidsstämplat bevispaket lämpligt för revision och regulatorisk granskning.
Hur lång tid tar en screening?
En standardsanktionskontroll slutförs vanligtvis på sekunder. En djupforskningsscreening — inklusive negativ mediaanalys och ägarkartläggning — tar i genomsnitt under två minuter. Den asynkrona modellen innebär att ditt system aldrig blockeras i väntan på resultat.
API-terminologi
- REST API
- En webb-API-arkitektur som använder standard HTTP-metoder (GET, POST, PUT, DELETE) för att interagera med resurser. ScreenVeritAI:s API följer REST-konventioner, vilket gör det kompatibelt med alla språk eller ramverk som kan göra HTTP-anrop.
- Asynkron bearbetning
- API:et tar emot ett jobb direkt och bearbetar det i bakgrunden — hämta resultaten genom polling.
- API-nyckel
- En hemlig token som används för att autentisera server-till-server API-förfrågningar. ScreenVeritAI:s API-nycklar har specifika behörigheter (search:read, search:write, batch:read, batch:write) för att tillämpa åtkomstmönster med minsta privilegium.
- Hastighetsbegränsning
- En mekanism som begränsar antalet API-förfrågningar en klient kan göra inom ett givet tidsfönster. Hastighetsbegränsningar tilldelas per prenumerationsnivå och kommuniceras via svarsheaders inklusive kvarvarande kvot och tidsstämpel för återställning.
- Strukturerat svar
- Ett maskinläsbart API-svarsformat (JSON) med konsekventa fältnamn, typer och nästling. Strukturerade svar möjliggör automatiserad tolkning, beslutslogik och generering av revisionsspår utan manuell dataextraktion.
REST API för AML-screening
Integrera sanktions-, PEP-, brottsbevaknings-, negativ media- och KYB/UBO-screening direkt i dina flöden för onboarding, övervakning och transaktioner. API:et är live: autentisera med en API-nyckel och anropa samma screeningmotor som portalen använder.
Ändpunkterna är allmänt tillgängliga med API-nyckelautentisering och gränser per prisnivå. Utforska varje ändpunkt i den interaktiva OpenAPI-dokumentationen på /api/v1/docs.
Kom igång
1. Skapa en API-nyckel
Skapa en scoped API-nyckel i din dashboard, eller generera en programmatiskt med ditt kontos bearer-token för server-till-server-förfrågningar.
POST/api/v1/keys curl -X POST https://screenveritai.com/api/v1/keys \ -H "Authorization: Bearer <SUPABASE_JWT>" \ -H "Content-Type: application/json" \ -d '{"name":"server-key","permissions":["search:read","search:write"]}'2. Kör din första sökning
Lämna in en entitet med X-API-Key-headern. API:et returnerar ett sök-ID som du hämtar när bearbetningen är klar.
POST/api/v1/search curl -X POST https://screenveritai.com/api/v1/search \ -H "X-API-Key: <YOUR_API_KEY>" \ -H "Content-Type: application/json" \ -d '{"entity_name":"Acme Ltd","entity_type":"company","search_type":"full_search"}'3. Skicka in en batch
Skicka en CSV/XLSX-fil för att screena många entiteter i ett enda jobb, och hämta sedan rader eller exporter när batchen är klar.
POST/api/v1/batch curl -X POST https://screenveritai.com/api/v1/batch \ -H "X-API-Key: <YOUR_API_KEY>" \ -F "file=@entities.csv"
Centrala ändpunkter
- POST
/api/v1/searchSkapa en screeningförfrågan för en entitet. Returnerar ett sök-ID och bearbetningsstatus. Ändpunkter för konto, täckning och hälsokontroll finns också under /api/v1.
Autentisering: X-API-Key (search:write)
- POST
/api/v1/batchSkicka in CSV/XLSX-filer för högvolymscreening, och hämta sedan rader eller exporter när jobben är klara.
Autentisering: X-API-Key (batch:write)
- POST
/api/v1/keysSkapa och hantera API-autentiseringsuppgifter med scoped behörigheter, nivåanpassade gränser och användningsspårning.
Autentisering: Bearer-token (konto)
Crypto address checks. Source evidence at 0,39 €.
Check an address against OFAC’s published digital-currency identifiers. Add native-USDC issuer-block status on Ethereum in the same request, at the same price.
0,39 € per completed address check · prepaid PAYG only
- POST
/api/v1/crypto-address/checks - GET
/api/v1/crypto-address/checks/{id}
- OFAC address match
- Exact address lookup under the requested OFAC currency label, such as ETH, XBT, TRX, USDT or USDC. Evidence includes the publication date, source URL, export hash and matching OFAC record.
- Ethereum USDC
- Set network to ethereum to check native-USDC issuer-block status at a finalized Ethereum mainnet block. The result includes the contract address, block number, block hash and contract response. Omit network for an OFAC-only check.
- Create a check
- POST requires X-API-Key with search:write, an Idempotency-Key of 16–128 ASCII letters, digits, underscores, dots, colons or hyphens, and address, currency and integer max_prepaid_cents fields. Set max_prepaid_cents to 39 to authorize the current price. A completed request returns HTTP 200 synchronously.
- Retrieve and retry
- GET requires search:read and returns your saved check without another charge. If a POST response is lost, reuse the same Idempotency-Key and payload. Keep that key while the outcome is uncertain; create a new key only for a deliberate new check.
- Billing
- Completed checks debit 0,39 € from your EUR prepaid balance. Minimum balance top-up: €5. Subscription allowances do not apply. Source failures are unpaid.
A negative result means no published OFAC match or no native-USDC issuer block in the checked source. It does not establish wallet ownership or clear an address of all risk.
This is an address-level source check. Transaction tracing, exposure scoring and continuous KYT monitoring are outside its scope. Crypto checks use this separate API; they are not available through name-screening batch uploads, portal history or PDF reports.
Varför team använder API:et
- En enda integration för sanktions-, PEP-, brottsbevaknings-, negativ media- och KYB/UBO-screening
- API-nyckelautentisering via X-API-Key-headern, med behörighetsavgränsade nycklar för åtkomst med minsta privilegium
- Gränser per prisnivå med användningsloggning för styrning och kostnadskontroll
- Ändpunkter för sökning, batch, nycklar, konto, täckning och hälsokontroll under /api/v1
- Interaktiv OpenAPI-dokumentation på /api/v1/docs plus ett maskinläsbart OpenAPI-schema
- Strukturerad utdata lämplig för granskningsloggar, ärendeakter och nedströms beslut
Integration playbooks
Developer guides
Endpoint contracts and worked examples for sanctions, PEP, criminal watchlists and batch screening.
PEP screening API guide
Implementation patterns for API-key auth, async jobs, and audit logs.
Batch screening workflow
Connect API and file-based flows for high-volume operations.
Workflow template
Map API responses into deterministic screening and escalation decisions.
Criminal watchlist coverage
See the official criminal and wanted-person lists included with sanctions and PEP checks.
Vanliga frågor om API:et
Hur autentiserar jag API-förfrågningar?
Screeningförfrågningar till /api/v1/search och /api/v1/batch autentiseras med en API-nyckel som skickas i X-API-Key-headern. Skapa nycklar i din dashboard, eller programmatiskt via /api/v1/keys efter att du autentiserat med ditt kontos bearer-token.
Är API:et allmänt tillgängligt?
Ja. API v1 är live och allmänt tillgängligt. Autentisera med en API-nyckel, anropa ändpunkterna för sökning, batch och nyckelhantering, och utforska allt i den interaktiva OpenAPI-dokumentationen på /api/v1/docs.
Kan jag avgränsa API-nyckelns behörigheter?
Ja. Nycklar stödjer behörigheter som search:read, search:write, batch:read och batch:write så att du kan tillämpa åtkomst med minsta privilegium per integration.
Vilka hastighetsgränser gäller?
Hastighetsgränser tilldelas per API-nivå och tillämpas per API-nyckel — nivån styr förfrågningsgenomströmningen, inte faktureringen. Svarsheaders inkluderar gränsen, kvarvarande kvot och tidsstämplar för återställning så att du kan anpassa dig utan avbrott.
Var kan jag snabbt testa ändpunkterna?
Använd den interaktiva dokumentationen på /api/v1/docs för Swagger-testning och /api/v1/redoc för referensdokumentation. OpenAPI-schemat serveras på /api/v1/openapi.json.
Börja screena på minuter.
Välj ett paket och börja screena redan idag.