Developer Quick Start Guide

Time to First API Call: 5 minutes

Prerequisites: None (sandbox is free, no API key required)

Documentation: Swagger UI | OpenAPI Spec

🚀 Quick Start: Use the sandbox to test all compliance modules without an API key. Production endpoints require a paid subscription.

1. Your First API Call (30 Seconds)

Step 1: Test AML Validation

curl -X POST https://api.zkorigoapi.com/sandbox/aml/validate \ -H "Content-Type: application/json" \ -d '{ "address": "0x742d35Cc6634C0532925a3b844Bc9e9F5b0fEb42", "chain": "ethereum" }'

Expected Response:

{ "module": "aml", "sandbox": true, "onchain": true, "ml": false, "advisory": "Sandbox mode: deterministic scoring only.", "risk_score": 72, "risk_band": "high", "limits": { "remaining_minute": 9, "remaining_hour": 99, "remaining_day": 499 } }

2. Supported Modules

2.1 AML Sanctions Screening

Endpoint: POST /sandbox/aml/validate

Use Case: Screen wallet addresses against OFAC sanctions lists

{ "address": "0x...", "chain": "ethereum|bitcoin|polygon|stellar|xrpl|hedera" }

2.2 ISO20022 Message Validation

Endpoint: POST /sandbox/iso/validate

Use Case: Validate ISO20022 XML messages (pacs.008, pain.001, etc.)

{ "message_type": "pacs.008", "xml_payload": "BASE64_ENCODED_XML" }

2.3 RWA Tokenization Attestation

Endpoint: POST /sandbox/rwa/attest

Use Case: Attest real-world asset tokenization

{ "asset_id": "RWA-001", "valuation": 120000, "attestation_type": "property|bond|equity|commodity" }

2.4 Zero-Knowledge Proof Verification

Endpoint: POST /sandbox/zk/verify

Use Case: Verify ZK proofs (requires on-demand integration)

{ "proof": "0x1234abcd...", "public_inputs": ["0xabc..."], "circuit_id": "compliance_v1" }

2.5 KYC Verification (External Provider)

Endpoint: POST /sandbox/kyc/verify

Use Case: KYC verification via Sumsub (external provider)

{ "identity_hash": "sha256_hash", "verification_level": "basic|enhanced", "jurisdiction": "US|EU|SG|..." }

2.6 Cross-Border Payment Validation

Endpoint: POST /sandbox/cbp/validate

Use Case: Validate cross-border payment corridors

{ "from_country": "US", "to_country": "EU", "amount": 10000, "currency": "USD" }

3. Sandbox vs Production

Feature Sandbox Production (/v1)
API Key Not required Required
Rate Limits 10/min, 100/hour, 500/day Per subscription tier
AI Advisory Disabled (deterministic only) Enabled
SLA Best-effort 99.0% uptime target
Support Community (best-effort) Email (24-72h response)

4. Getting a Production API Key

Step 1: Choose a Plan

Step 2: Subscribe

Visit zkorigoapi.com and click "API Key Plans"

Step 3: Use Your API Key

curl -X POST https://api.zkorigoapi.com/v1/aml/validate \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY" \ -d '{ "address": "0x742d35Cc6634C0532925a3b844Bc9e9F5b0fEb42", "chain": "ethereum" }'

5. Code Examples

5.1 Python

import requests url = "https://api.zkorigoapi.com/sandbox/aml/validate" payload = { "address": "0x742d35Cc6634C0532925a3b844Bc9e9F5b0fEb42", "chain": "ethereum" } response = requests.post(url, json=payload) print(response.json())

5.2 Node.js

const axios = require('axios'); const url = 'https://api.zkorigoapi.com/sandbox/aml/validate'; const payload = { address: '0x742d35Cc6634C0532925a3b844Bc9e9F5b0fEb42', chain: 'ethereum' }; axios.post(url, payload) .then(response => console.log(response.data)) .catch(error => console.error(error));

5.3 PHP

$url = 'https://api.zkorigoapi.com/sandbox/aml/validate'; $data = [ 'address' => '0x742d35Cc6634C0532925a3b844Bc9e9F5b0fEb42', 'chain' => 'ethereum' ]; $options = [ 'http' => [ 'method' => 'POST', 'header' => 'Content-Type: application/json', 'content' => json_encode($data) ] ]; $context = stream_context_create($options); $result = file_get_contents($url, false, $context); echo $result;

6. Best Practices

7. Support