KYCAML.ai KYCAML.ai | API | Contact | Pricing
Free Blockchain AML Scan
Register

API Documentation

Authentication

All API requests require authentication using your API key.

Get Your API Key

Navigate to the API Keys section to generate your API key.

API Key Format:
kycaml_live_[account_hash]_[key]

Authorization Header (Recommended)

Authorization: Bearer kycaml_live_[account_hash]_[key]

Query Parameter (Alternative)

?api_key=kycaml_live_[account_hash]_[key]

Endpoints

Check cryptocurrency wallet addresses against our sanctions, fraud, and AML databases.

POST GET Check Wallet

Quick lookup to check if a wallet address is flagged in our database.

Endpoint
https://gateway.kycaml.ai/apis/blockchain-aml-scan/
Parameters
Parameter Type Required Description
address string Yes Blockchain wallet address to check
action string No Action type: check (default), analyze, or batch
Example Request
curl -X POST https://gateway.kycaml.ai/apis/blockchain-aml-scan/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
    "action": "check"
  }'
Example Response
{
  "success": true,
  "data": {
    "wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
    "is_flagged": true,
    "risk_score": 0.85,
    "category": "High Risk"
  },
  "metadata": {
    "account_hash": "abc123...",
    "account_type": "professional",
    "action": "check",
    "response_time_ms": 45,
    "timestamp": "2025-11-07T02:00:00+00:00"
  }
}

POST Risk Analysis

AI-powered risk scoring using machine learning models.

Example Request
curl -X POST https://gateway.kycaml.ai/apis/blockchain-aml-scan/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
    "action": "analyze"
  }'

POST Batch Check

Check multiple wallet addresses at once (maximum 100 per request).

Example Request
curl -X POST https://gateway.kycaml.ai/apis/blockchain-aml-scan/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "address": "0xabc...,0xdef...,0x123...",
    "action": "batch"
  }'

Search for individuals and entities in sanctions lists, PEP databases, criminal watchlists, and debarment databases. Powered by AI for better matching.

GET POST Sanctions Search

Search for entities by name using AI-powered semantic search or traditional keyword matching.

Endpoint
https://kycaml.ai/api/sanctions_search.php
Parameters
Parameter Type Required Description
query string Yes Name or entity to search (min 2 characters)
limit integer No Maximum results to return (default: 10, max: 100)
use_ai boolean No Use AI vector search for better matching (default: true)
topic string No Filter by category: sanctions, pep, crime, debarment
Example Request
curl -X GET "https://kycaml.ai/api/sanctions_search.php?query=Vladimir%20Putin&limit=5&use_ai=true"
Example Response
{
  "success": true,
  "query": "Vladimir Putin",
  "count": 5,
  "search_method": "ai",
  "results": [
    {
      "entity_id": "Q7747",
      "name": "Vladimir Vladimirovich Putin",
      "type": "Person",
      "categories": ["PEP", "Sanctions"],
      "is_targeted": true,
      "match_score": 98,
      "confidence": "high",
      "aliases": ["Putin", "V. Putin", "Владимир Путин"],
      "birth_date": "1952-10-07",
      "nationality": "RU",
      "countries": ["RU"],
      "last_updated": "2025-01-20"
    }
  ]
}
Response Fields
Field Type Description
entity_id string Unique identifier for the entity
name string Primary name of the entity
type string Entity type (Person, Organization, Company, etc.)
categories array Risk categories: PEP, Sanctions, Crime, Debarment
is_targeted boolean Whether entity is on targeted sanctions lists
match_score integer AI similarity score (0-100, only for AI search)
confidence string Match confidence: high, medium, low

Rate Limits

API rate limits are based on your account service package.

Plan Price Team Members API Calls / Month
EssentialFREE11,000
Branded$5.00/month21,000
Corporate$100.00/month310,000
Enterprise$500.00/month5100,000
Unlimited$5,000.00/monthUnlimitedUnlimited

* Rate limits are enforced per calendar month. Contact us for enterprise custom limits.

Rate Limit Exceeded
When you exceed your rate limit, you'll receive a 429 Too Many Requests response with a retry_after value in seconds.

Error Codes

Code Status Description
400 Bad Request Missing or invalid parameters
401 Unauthorized Invalid or missing API key
403 Forbidden Insufficient permissions
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Server error occurred

Need Help?

If you have questions or need assistance: