API SPEC · V1 · GADEVELOPER REFERENCE

    Developer API

    Sanctions screening API for onboarding and monitoring

    Add sanctions, PEP and criminal-watchlist checks to onboarding or monitoring through one REST API. Use scoped API keys, submit single or batch searches, and retain structured results for review and audit. Cases that need ownership or relationship research can continue into a deeper KYB or UBO workflow in the platform.

    API v1 is live

    Endpoints are generally available with API-key auth and per-tier rate limits. Explore every endpoint in the interactive OpenAPI docs at /api/v1/docs.

    Quickstart

    01 / 05
    STEP 01

    1. Create an API key

    Create a scoped API key in your dashboard, or mint one programmatically with your account bearer token for server-to-server requests.

    curl
    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"]}'
    STEP 02

    2. Run your first search

    Submit an entity with the X-API-Key header and choose sanctions_check, adverse_media, full_search, or deep_research_report. The API returns a search id and an estimated time; retrieve the result when processing completes.

    curl
    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"}'
    STEP 03

    3. Submit a batch

    Send a CSV/XLSX file with name, optional country, and optional search_type. Use one search type per file: sanctions_check, adverse_media, or full_search. Deep Research is per-case only and is not accepted in batch.

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

    Core endpoints

    02 / 05
    EP 01ENDPOINT

    POST /api/v1/search

    Create one Quick Check (sanctions_check), Adverse Media Check (adverse_media), Full Search (full_search), or Deep Research Report (deep_research_report) using search_type. Returns a search id, processing status and an estimated time. Deep Research runs as a durable background job — poll for the result rather than holding the connection open.

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

    EP 02ENDPOINT

    POST /api/v1/batch

    Submit CSV/XLSX files for high-volume screening. The optional search_type column defaults to sanctions_check, must be consistent across the file, and does not accept deep_research_report.

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

    EP 03ENDPOINT

    POST /api/v1/keys

    Create and manage API credentials with scoped permissions, tier-aware rate limits, and usage tracking.

    Auth: Bearer token (account)

    Why teams use the API

    03 / 05
    • Single integration for sanctions, PEP, criminal watchlist, adverse media, and KYB/UBO screening
    • API-key auth via the X-API-Key header, with permission-scoped keys for least-privilege access
    • Per-tier rate limits with usage logging for governance and cost control
    • Search, batch, keys, account, coverage, and health endpoints under /api/v1
    • Interactive OpenAPI docs at /api/v1/docs plus a machine-readable OpenAPI schema
    • Structured output suitable for audit logs, case files, and downstream decisions

    API FAQ

    05 / 05
    Q01

    How do I authenticate API requests?

    Screening requests to /api/v1/search and /api/v1/batch authenticate with an API key sent in the X-API-Key header. Create keys in your dashboard, or programmatically via /api/v1/keys after authenticating with your account bearer token.

    Q02

    Is the API generally available?

    Yes. API v1 is live and generally available. Authenticate with an API key, call the search, batch, and key-management endpoints, and explore everything in the interactive OpenAPI docs at /api/v1/docs.

    Q03

    Can I scope API key permissions?

    Yes. Keys support permissions such as search:read, search:write, batch:read, and batch:write so you can enforce least-privilege access per integration.

    Q04

    What rate limits apply?

    Rate limits are assigned per API tier and enforced per API key — the tier governs request throughput, not billing. Response headers include the limit, remaining quota, and reset timestamps so you can back off cleanly.

    Q05

    Where can I test the endpoints quickly?

    Use the interactive documentation at /api/v1/docs for Swagger testing and /api/v1/redoc for reference-style docs. The OpenAPI schema is served at /api/v1/openapi.json.