BetaThis platform is in beta testing. All transactions use test mode.

Veria Protocol Documentation

Real-time KYC/AML compliance infrastructure for blockchain applications. Screen wallet addresses against global sanctions lists in under 100ms.

Quick Start

1. Get Your API Key

Sign up for a free account to get your API key. No credit card required for the free tier.

Get API Key

2. Make Your First Request

Screen any wallet address or ENS name with a single API call:

curl -X POST https://api.veria.cc/v1/screen \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input": "vitalik.eth"}'

3. Handle the Response

The API returns a risk assessment with actionable details:

{
  "score": 12,
  "risk": "low",
  "chain": "ethereum",
  "resolved": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "latency_ms": 47,
  "details": {
    "sanctions_hit": false,
    "pep_hit": false,
    "watchlist_hit": false
  }
}

API Reference

Base URL
https://api.veria.cc

Authentication

All API requests require a Bearer token in the Authorization header.

Authorization: Bearer YOUR_API_KEY

Endpoints

MethodEndpointDescription
POST/v1/screenScreen a wallet address for sanctions and risk
GET/v1/healthCheck API health and latency
GET/v1/usageGet API usage statistics
POST/v1/batchScreen multiple wallets in one request

POST /v1/screen

Screen a wallet address or ENS name for compliance risks.

Request Body

{
  "input": "0x..." | "name.eth"  // Required: Wallet address or ENS name
}

Response

{
  "score": 0-100,                    // Risk score (lower is safer)
  "risk": "low" | "medium" | "high" | "critical",
  "chain": "ethereum",               // Detected blockchain
  "resolved": "0x...",               // Resolved address (if ENS)
  "latency_ms": number,
  "details": {
    "sanctions_hit": boolean,
    "pep_hit": boolean,
    "watchlist_hit": boolean,
    "checked_lists": ["OFAC SDN", "EU Sanctions", ...],
    "address_type": "wallet" | "ens" | "entity"
  }
}

Rate Limits

PlanOperationsRate Limit
Sandbox100/month10/min
Professional10,000/month100/min
Scale100,000/month500/min
Protocol500,000/month1,000/min

Compliance Guides

Code Examples

Node.js / TypeScript

import { VeriaSdk } from '@veria-protocol/sdk';

const veria = new VeriaSdk({
  apiKey: process.env.VERIA_API_KEY
});

async function screenWallet(address: string) {
  const result = await veria.screen({ input: address });

  if (result.risk === 'critical') {
    throw new Error('Transaction blocked: sanctioned entity');
  }

  return result;
}
Full Node.js Guide →

Next.js API Route

// app/api/screen/route.ts
export async function POST(req: Request) {
  const { input } = await req.json();

  const res = await fetch('https://api.veria.cc/v1/screen', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.VERIA_API_KEY}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({ input }),
  });

  return Response.json(await res.json());
}
Full Next.js Guide →

API Features

Sub-100ms Latency

Average response time under 100ms for real-time transaction screening.

OFAC & EU Sanctions

Real-time screening against OFAC SDN, EU consolidated list, and UN sanctions.

ENS Resolution

Automatic ENS name resolution to wallet addresses with chain detection.

Up to 99.99% Uptime SLA

Enterprise-grade reliability. 99.9% SLA on Professional/Scale, 99.99% on Protocol tier.

Case Studies

Ready to Get Started?

Try Veria Protocol with our free tier. No credit card required.