Udvikler-API
Hvorfor kopiere navne mellem systemer, når ét API-kald klarer det hele?
Indbyg virksomhedsverifikation, ejerskabskortlægning, PEP-tjek, negativ omtale og sanktionssignaler direkte i dine eksisterende arbejdsgange.
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
Byg selv vs. integrér ScreenVeritAI
| Aspekt | Byg selv | ScreenVeritAI API |
|---|---|---|
| Tid til produktion | 6-12 måneder til at skaffe lister, bygge matchning og håndtere særtilfælde | Dage til at integrere — produktionsklar fra første API-kald |
| Dækning af sanktionslister | Manuel indlæsning af hvert listeformat; løbende skemavedligeholdelse | Alle store kilder, vedligeholdt og opdateret løbende |
| Matchningsnøjagtighed | Skræddersyet fuzzy matching kræver NLP-ekspertise og konstant finjustering | AI med fuzzy matching, translitteration, aliasopløsning og fonetiske algoritmer |
| PEP og negativ omtale | Separate leverandører, separate integrationer, separate budgetter | PEP, negativ omtale og UBO-data i samme API-svar |
| Løbende vedligeholdelse | Dedikeret team til listeopdateringer, skemaændringer og finjustering af falske positiver | Fuldt administreret — opdateringer, forbedringer og infrastruktur håndteres for dig |
| Revisionsspor | Byg din egen logning, dokumentation og opbevaringsinfrastruktur | Tidsstemplede dokumentationspakker med kildehenvisninger inkluderet |
Fire trin til indbygget compliance
Få din API-nøgle
Opret en afgrænset nøgle fra dit dashboard med minimumsrettigheder: search:read, search:write, batch:read, batch:write.
Integrér endpointet
Ét POST-kald til dit onboarding-, betalings- eller CRM-flow — send enhedsnavn, type og land, og få et job-ID tilbage.
Behandl resultater
Poll resultat-endpointet for struktureret JSON — virksomhedskontekst, ejerskab, PEP, negativ omtale, sanktionssignaler og risikoscorer.
Overvåg og alarmér
Konfigurér løbende overvågning — API'et sender alarmer, når sanktionslister opdateres, eller ny negativ omtale dukker op.
Kom i gang på få minutter
Ét API-kald returnerer et komplet 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-ydeevne
€0.39
Quick Check pr. kald, intet platformgebyr
202
HTTP-status når en søgning er accepteret; resultatet hentes derefter
EU
Hostet i Finland; data i hvile bliver i EU
Ofte stillede spørgsmål om API-integration
Hvordan autentificerer jeg API-forespørgsler?
Autentificer API-forespørgsler med en hemmelig nøgle sendt i X-API-Key-headeren. Nøgler oprettes fra dit dashboard med afgrænsede rettigheder.
Er API'et synkront eller asynkront?
Asynkron. Send en anmodning, få et job-ID, hent resultater ved polling. Din pipeline blokeres aldrig.
Hvilket svarformat returnerer API'et?
Struktureret JSON med felter for centrale jurisdiktioner og arrays pr. kilde samt fund fra efterlysningslister og PEP/RCA. Gennemgå tilgængelig markdown, identifikatorer og kildehenvisninger. Svaret giver ikke en numerisk risikoscore.
Hvilke rate limits gælder?
Tildelt pr. abonnementsniveau pr. API-nøgle. Svarheaders indeholder resterende kvote og nulstillingstidspunkt.
Kan jeg screene enheder i batch via API'et?
Ja. Batch-endpointet accepterer CSV eller XLSX med op til 100 rækker pr. forespørgsel, og resultater kan hentes pr. række eller som en samlet eksport.
Hvordan opsætter jeg løbende overvågning via API'et?
Konfigurér overvågning efter den indledende screening. Når lister opdateres, eller ny negativ omtale dukker op, markerer overvågningen ændringen og advarer dig i appen.
Hvilke compliance-data er inkluderet i hvert screeningresultat?
Sanktionsmatch på tværs af alle store kilder, PEP-status med familieforbindelser, negativ omtale med flersprogede kildehenvisninger, UBO-data, risikoklassificering og tidsstemplet dokumentationspakke.
Hvor lang tid tager en screening?
Standard sanktionstjek: sekunder. Dybderesearch med negativ omtale og ejerskabskortlægning: under to minutter.
API-terminologi
- REST API
- Web-API, der bruger standard HTTP-metoder — kompatibelt med ethvert sprog eller framework, der kan sende HTTP-forespørgsler.
- Asynkron behandling
- API'en accepterer et job med det samme og behandler det i baggrunden — hent resultater via polling.
- API-nøgle
- Hemmeligt token til autentificering af API-forespørgsler, afgrænset med specifikke rettigheder for minimumsadgang.
- Rate limiting
- Begrænser API-forespørgsler pr. tidsvindue efter abonnementsniveau — resterende kvote og nulstillingstidspunkt fremgår af svarheaders.
- Struktureret svar
- Maskinlæsbar JSON med konsistente feltnavne og -typer, der muliggør automatisk parsing og beslutningslogik.
REST API til AML-screening
Integrér sanktions-, PEP-, kriminalliste-, negativ omtale- og KYB/UBO-screening direkte i dine onboarding-, overvågnings- og transaktionsflows. API'et er live: autentificér med en API-nøgle, og kald den samme screeningmotor, som portalen bruger.
Endpoints er generelt tilgængelige med API-nøgle-autentificering og rate limits pr. niveau. Udforsk hvert endpoint i den interaktive OpenAPI-dokumentation på /api/v1/docs.
Kom hurtigt i gang
1. Opret en API-nøgle
Opret en afgrænset API-nøgle i dit dashboard, eller udsted en programmatisk med din kontos bearer-token til server-til-server-forespørgsler.
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ørste søgning
Indsend en enhed med X-API-Key-headeren. API'et returnerer et søge-id, du henter, når behandlingen er afsluttet.
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. Indsend en batch
Send en CSV/XLSX-fil for at screene mange enheder i ét job, og hent derefter rækker eller eksporter, når batchen er færdig.
POST/api/v1/batch curl -X POST https://screenveritai.com/api/v1/batch \ -H "X-API-Key: <YOUR_API_KEY>" \ -F "file=@entities.csv"
Centrale endpoints
- POST
/api/v1/searchOpret en screeningforespørgsel for én enhed. Returnerer et søge-id og behandlingsstatus. Endpoints til konto, dækning og drift er også tilgængelige under /api/v1.
Auth: X-API-Key (search:write)
- POST
/api/v1/batchIndsend CSV/XLSX-filer til screening i stort volumen, og hent derefter rækker eller eksporter, når jobbene er afsluttet.
Auth: X-API-Key (batch:write)
- POST
/api/v1/keysOpret og administrér API-legitimationsoplysninger med afgrænsede rettigheder, niveaubaserede rate limits og forbrugssporing.
Auth: 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.
Hvorfor teams bruger API'et
- Én integration til sanktions-, PEP-, kriminalliste-, negativ omtale- og KYB/UBO-screening
- API-nøgle-autentificering via X-API-Key-headeren, med rettighedsafgrænsede nøgler for minimumsadgang
- Rate limits pr. niveau med forbrugslogning til governance og omkostningsstyring
- Search-, batch-, keys-, account-, coverage- og health-endpoints under /api/v1
- Interaktiv OpenAPI-dokumentation på /api/v1/docs plus et maskinlæsbart OpenAPI-skema
- Struktureret output egnet til revisionslogs, sagsakter og efterfølgende beslutninger
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.
Ofte stillede spørgsmål om API'et
Hvordan autentificerer jeg API-forespørgsler?
Screeningforespørgsler til /api/v1/search og /api/v1/batch autentificeres med en API-nøgle sendt i X-API-Key-headeren. Opret nøgler i dit dashboard, eller programmatisk via /api/v1/keys, efter du har autentificeret med din kontos bearer-token.
Er API'et generelt tilgængeligt?
Ja. API v1 er live og generelt tilgængeligt. Autentificér med en API-nøgle, kald search-, batch- og nøglestyrings-endpoints, og udforsk alt i den interaktive OpenAPI-dokumentation på /api/v1/docs.
Kan jeg afgrænse rettigheder for API-nøgler?
Ja. Nøgler understøtter rettigheder som search:read, search:write, batch:read og batch:write, så du kan håndhæve minimumsadgang pr. integration.
Hvilke rate limits gælder?
Rate limits tildeles pr. API-niveau og håndhæves pr. API-nøgle — niveauet styrer anmodningsgennemstrømningen, ikke faktureringen. Svarheaders indeholder grænsen, den resterende kvote og nulstillingstidspunkter, så du kan trappe forbruget ned uden problemer.
Hvor kan jeg hurtigt teste endpoints?
Brug den interaktive dokumentation på /api/v1/docs til Swagger-test og /api/v1/redoc til referencestil-dokumentation. OpenAPI-skemaet leveres på /api/v1/openapi.json.
Kom i gang med screening på få minutter.
Vælg en plan, og start screeningen i dag.