Developer API

    Proč kopírovat jména mezi systémy, když to zvládne jedno volání API?

    Zabudujte ověřování firem, mapování vlastnictví, kontrolu PEP, negativní média a sankční signály přímo do svých stávajících procesů.

    POST/api/v1/searchbash
    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 matching
    • entity_type"person", "company" or "any" (default "any")
    • countryOptional context field; does not filter Quick Check matching
    • search_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.

    GET/api/v1/search/{search_id}200 OK
    {
      "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"
    }
    No relevant listing found / nullSanctioned / potential matchPer-source hit_countStatus and search_type
    • "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
    Requestbash
    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"}'
    Response202 Accepted
    { "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
    Requestbash
    curl https://screenveritai.com/api/v1/search/SEARCH_ID \
      -H 'X-API-Key: YOUR_API_KEY'
    Response200 OK
    { "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
    Requestbash
    curl -X POST https://screenveritai.com/api/v1/batch \
      -H 'X-API-Key: YOUR_API_KEY' \
      -F 'file=@portfolio.csv'
    Response202 Accepted
    { "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

      1. Customer signup
      2. POST/api/v1/search
      3. Poll until completed
      4. Approve / hold
    • Payment processing

      1. Transaction init
      2. POST/api/v1/search
      3. Poll until completed
      4. Release / hold
    • CRM re-screen

      1. Record updated
      2. Your scheduler fires
      3. POST/api/v1/search
      4. Write result back

    Vlastní vývoj vs. integrace ScreenVeritAI

    Vlastní vývoj vs. integrace ScreenVeritAI
    AspektVlastní vývojAPI ScreenVeritAI
    Doba do nasazení6–12 měsíců na získání seznamů, vybudování porovnávání a řešení výjimekIntegrace za dny — připraveno k produkčnímu nasazení od prvního volání API
    Pokrytí sankčních seznamůRuční zpracování formátu každého seznamu; průběžná údržba schématKaždý hlavní zdroj, průběžně udržovaný a aktualizovaný
    Přesnost porovnáváníVlastní fuzzy porovnávání vyžaduje odbornost v NLP a neustálé laděníAI s fuzzy porovnáváním, přepisem do latinky, rozpoznáváním aliasů a fonetickými algoritmy
    PEP a negativní médiaSamostatní dodavatelé, samostatné integrace, samostatné rozpočtyData PEP, negativních médií a UBO v jedné odpovědi API
    Průběžná údržbaVyhrazený tým pro aktualizace seznamů, změny schémat a ladění falešných shodPlně spravováno — aktualizace, vylepšení i infrastrukturu řešíme za vás
    Auditní stopaVybudujte si vlastní infrastrukturu pro logování, důkazy a uchovávání záznamůČasově orazítkované balíčky důkazů se zdrojovými odkazy jsou součástí

    Čtyři kroky k zabudované compliance

    1. Získejte API klíč

      Vytvořte si v dashboardu klíč s omezeným rozsahem a nejnižšími nutnými oprávněními: search:read, search:write, batch:read, batch:write.

    2. Integrujte endpoint

      Jedno POST volání do vašeho onboardingového, platebního nebo CRM procesu — pošlete jméno subjektu, typ a zemi, dostanete zpět id úlohy.

    3. Zpracujte výsledky

      Dotazujte se pollingem na endpoint s výsledky a získejte strukturovaný JSON — kontext firmy, vlastnictví, PEP, negativní média, sankční signály a riziková skóre.

    4. Monitorujte a upozorňujte

      Nastavte průběžný monitoring — API pošle upozornění, když se aktualizují sankční seznamy nebo se objeví nová negativní média.

    Začněte během minut

    Jedno volání API vrátí kompletní výsledek screeningu.

    Prověřit subjektbash
    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 }
    Zkontrolovat výsledekbash
    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 }

    Výkon API

    • €0.39

      Quick Check za jedno volání, bez poplatku za platformu

    • 202

      HTTP stav po přijetí vyhledávání; výsledek se poté dotazuje

    • EU

      Hostováno ve Finsku; data v klidu zůstávají v EU

    FAQ k integraci API

    Jak se autentizují API požadavky?

    API požadavky autentizujte tajným klíčem předávaným v hlavičce X-API-Key. Klíče se vytváří ve vašem dashboardu s omezeným rozsahem oprávnění.

    Je API synchronní, nebo asynchronní?

    Asynchronní. Odešlete požadavek, získáte ID úlohy a výsledky si vyzvednete pollingem. Vaše pipeline se nikdy nezablokuje.

    V jakém formátu API vrací odpověď?

    Strukturovaný JSON s poli hlavních jurisdikcí a poli výsledků jednotlivých zdrojů, doplněný o nálezy ze seznamů hledaných osob a PEP/RCA. Projděte dostupný markdown, identifikátory a odkazy na zdroje. Odpověď neposkytuje číselné skóre rizika.

    Jaké limity požadavků platí?

    Přidělují se podle tarifu předplatného pro každý API klíč zvlášť. Hlavičky odpovědi obsahují zbývající kvótu a čas obnovení.

    Můžu subjekty prověřovat hromadně přes API?

    Ano. Endpoint pro dávky přijímá CSV nebo XLSX s až 100 řádky na požadavek, výsledky si vyzvednete po řádcích nebo jako kompletní export.

    Jak nastavím průběžný monitoring přes API?

    Monitoring nastavíte po úvodním screeningu. Když se seznamy aktualizují nebo se objeví nová negativní média, monitoring změnu označí a upozorní vás v aplikaci.

    Jaká compliance data jsou součástí každého výsledku screeningu?

    Sankční shody napříč každým hlavním zdrojem, status PEP včetně rodinných vazeb, negativní média s vícejazyčnými citacemi, data UBO, riziková úroveň a časově orazítkovaný balíček důkazů.

    Jak dlouho screening trvá?

    Standardní kontrola sankcí: sekundy. Hloubkový výzkum s negativními médii a mapováním vlastnictví: pod dvě minuty.

    Terminologie API

    REST API
    Webové API využívající standardní HTTP metody — kompatibilní s jakýmkoli jazykem nebo frameworkem, který umí odesílat HTTP požadavky.
    Asynchronní zpracování
    API úlohu okamžitě přijme a zpracuje ji na pozadí — výsledky získáte pollingem.
    API klíč
    Tajný token pro autentizaci API požadavků, s omezeným rozsahem oprávnění pro přístup s nejnižšími nutnými právy.
    Omezení počtu požadavků (rate limiting)
    Omezuje počet API požadavků za časové okno podle tarifu předplatného — zbývající kvóta a čas obnovení jsou v hlavičkách odpovědi.
    Strukturovaná odpověď
    Strojově čitelný JSON s konzistentními názvy a typy polí, umožňující automatizované zpracování a rozhodovací logiku.

    REST API pro AML screening

    Integrujte screening sankcí, PEP, seznamů hledaných osob, negativních médií a KYB/UBO přímo do svého onboardingu, monitoringu a transakčních toků. API je živé: ověříte se API klíčem a voláte stejný screeningový engine, který používá portál.

    Endpointy jsou obecně dostupné s autentizací API klíčem a limity požadavků podle tarifu. Prozkoumejte každý endpoint v interaktivní OpenAPI dokumentaci na /api/v1/docs.

    Rychlý start

    1. 1. Vytvořte API klíč

      Vytvořte v dashboardu API klíč s omezeným rozsahem oprávnění, nebo ho pro komunikaci mezi servery vygenerujte programově pomocí bearer tokenu svého účtu.

      POST/api/v1/keyscurl
      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. 2. Spusťte první vyhledávání

      Odešlete subjekt s hlavičkou X-API-Key. API vrátí id vyhledávání, které si vyzvednete po dokončení zpracování.

      POST/api/v1/searchcurl
      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. 3. Odešlete dávku

      Pošlete soubor CSV/XLSX pro prověření mnoha subjektů v jedné úloze a poté si vyzvedněte řádky nebo export po dokončení dávky.

      POST/api/v1/batchcurl
      curl -X POST https://screenveritai.com/api/v1/batch \
        -H "X-API-Key: <YOUR_API_KEY>" \
        -F "file=@entities.csv"

    Základní endpointy

    • POST/api/v1/search

      Vytvoří screeningový požadavek pro jeden subjekt. Vrátí id vyhledávání a stav zpracování. Pod /api/v1 jsou dostupné i endpointy pro účet, pokrytí a stav služby.

      Autentizace: X-API-Key (search:write)

    • POST/api/v1/batch

      Přijme soubory CSV/XLSX pro vysokoobjemový screening a poté umožní vyzvednout řádky nebo export po dokončení úloh.

      Autentizace: X-API-Key (batch:write)

    • POST/api/v1/keys

      Vytváří a spravuje přístupové údaje API s omezeným rozsahem oprávnění, limity podle tarifu a sledováním využití.

      Autentizace: Bearer token (účet)

    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.

    Proč týmy API používají

    • Jedna integrace pro screening sankcí, PEP, seznamů hledaných osob, negativních médií a KYB/UBO
    • Autentizace API klíčem přes hlavičku X-API-Key, s klíči omezenými na konkrétní oprávnění pro přístup s nejnižšími nutnými právy
    • Limity požadavků podle tarifu se záznamem využití pro řízení a kontrolu nákladů
    • Endpointy pro vyhledávání, dávky, klíče, účet, pokrytí a stav služby pod /api/v1
    • Interaktivní OpenAPI dokumentace na /api/v1/docs plus strojově čitelné schéma OpenAPI
    • Strukturovaný výstup vhodný pro auditní záznamy, spisy případů a navazující rozhodování

    Integration playbooks

    FAQ k API

    Jak se autentizují API požadavky?

    Screeningové požadavky na /api/v1/search a /api/v1/batch se autentizují API klíčem odeslaným v hlavičce X-API-Key. Klíče vytvoříte ve svém dashboardu, nebo programově přes /api/v1/keys po autentizaci bearer tokenem svého účtu.

    Je API obecně dostupné?

    Ano. API v1 je živé a obecně dostupné. Autentizujte se API klíčem, volejte endpointy pro vyhledávání, dávky a správu klíčů a vše prozkoumejte v interaktivní OpenAPI dokumentaci na /api/v1/docs.

    Můžu omezit rozsah oprávnění API klíče?

    Ano. Klíče podporují oprávnění jako search:read, search:write, batch:read a batch:write, takže pro každou integraci můžete vynutit přístup s nejnižšími nutnými právy.

    Jaké limity požadavků platí?

    Limity se přidělují podle úrovně API a vynucují se pro každý API klíč zvlášť — úroveň určuje propustnost požadavků, ne fakturaci. Hlavičky odpovědi obsahují limit, zbývající kvótu a časová razítka obnovení, takže můžete plynule zpomalit.

    Kde můžu endpointy rychle vyzkoušet?

    Použijte interaktivní dokumentaci na /api/v1/docs pro testování ve Swaggeru a /api/v1/redoc pro referenční dokumentaci. Schéma OpenAPI je dostupné na /api/v1/openapi.json.

    Zahajte screening během několika minut.

    Vyberte si tarif a začněte prověřovat ještě dnes.