SDK
ウォレット統合とオンチェーン・コンプライアンス用 JavaScript SDK。
インストール
npm
npm install @fidesorigin/sdk
yarn
yarn add @fidesorigin/sdk
クイックスタート
SDK を初期化
TypeScript
import { FidesOrigin } from '@fidesorigin/sdk';
const fides = new FidesOrigin({
apiKey: 'YOUR_API_KEY',
network: 'sepolia' // または 'mainnet', 'base'
});
住所リスクをチェック
TypeScript
const result = await fides.evaluateAddress('0x...');
console.log(result.riskTier); // 'LOW', 'MEDIUM', 'HIGH', 'CRITICAL'
console.log(result.isSanctioned); // true または false
イベントを購読
TypeScript
fides.on('RiskDetected', (event) => {
console.log('リスク検出:', event.address, event.riskTier);
});
fides.on('SanctionAdded', (event) => {
console.log('制裁追加:', event.address);
});
コア API
| メソッド | 戻り値 | 説明 |
|---|---|---|
connect(provider) | Promise<void> | Web3 プロバイダーに接続 |
evaluateAddress(addr) | Promise<RiskProfile> | 住所のリスクプロファイルを取得 |
evaluateTx(tx) | Promise<TxResult> | トランザクションの事前スクリーニング |
subscribe(event) | EventEmitter | オンチェーン・イベントを購読 |
disconnect() | void | 接続をクリーンアップ |
Solidity 統合
FidesOrigin コントラクトを Solidity プロジェクトに直接インポート:
Solidity 0.8.20
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@fidesorigin/contracts/CompliantStableCoin.sol";
contract MyStableCoin is CompliantStableCoin {
constructor()
CompliantStableCoin("MyStableCoin", "MSC")
{
policy = IssuerPolicy({
maxTxAmount: 1_000_000 * 10**6,
dailyLimit: 10_000_000 * 10**6,
allowMediumRisk: true,
allowHighRisk: false,
blockMixer: true,
requireDestinationKYC: true,
cooldownPeriod: 24 hours
});
}
}
型
TypeScript
interface RiskProfile {
address: string;
riskScore: number;
riskTier: 'UNKNOWN' | 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
isSanctioned: boolean;
tags: string[];
entityName: string;
lastUpdated: string;
}
interface TxResult {
allowed: boolean;
riskScore: number;
riskTier: string;
quarantineRequired: boolean;
reason: string | null;
}