REST API
Integrate ObsiFlow signals into your trading bot or dashboard. All endpoints are available at /api/v1.
Configuration
Health & Status
GET
/healthCheck Python service healthGET
/healthCheck Node.js service healthGET
/api/v1/ollama-kg/healthCheck Ollama Knowledge Graph service healthUser Wallets
Manage user wallets and track holdings.
POST
/api/v1/users/demo_user/walletsAdd a wallet for trackingView Request Body
{
"wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"metadata": {
"label": "Main Trading Wallet",
"type": "user",
"chain": "ethereum"
}
}GET
/api/v1/users/demo_user/walletsGet all wallets for a userGET
/api/v1/users/demo_user/holdingsGet holdings for a userNews API
GET
/api/v1/news/listList all news articlesPOST
/api/v1/news/fetchManually trigger news fetching (no body required)Whale Wallets
GET
/api/v1/whale/listList all whale walletsGET
/api/v1/whale/0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb/transactionsGet transaction history for a whale walletPOST
/api/v1/whale/detectDetect whale transaction and generate signalView Request Body
{
"wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"from_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"to_address": "0x8ba1f109551bD432803012645Hac136c22C9c8C7",
"amount": "1000000000000000000",
"token": "ETH",
"transaction_hash": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
"value_usd": 2500000,
"chain": "ethereum",
"user_id": "demo_user",
"triggering_news": {
"title": "Whale moves 1000 ETH to exchange",
"url": "https://example.com/news",
"text": "Large whale wallet moved significant amount to exchange"
},
"event_data": {
"type": "whale_transaction",
"description": "Large transfer detected"
}
}Signal API
Generate and retrieve trading signals with FDC verification support. Signals include attestation types (WalletBalance, BalanceDecreasingTransaction) and verification requirements.
GET
/api/v1/signal/latestGet latest signalsGET
/api/v1/signal/pendingGet pending verification signalsGET
/api/v1/signal/demo_user_signal_123Get specific signal by ID with full verification detailsPOST
/api/v1/signal/generateGenerate immediate signal (Phase 1) with FDC verification. Response includes attestation_type and verification_required fields.View Request Body
{
"user_id": "demo_user",
"event_id": "event_whale_tx_1769527684180",
"event_data": {
"type": "whale_transaction",
"wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"from_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"to_address": "0x8ba1f109551bD432803012645Hac136c22C9c8C7",
"amount": "1000000000000000000",
"token": "ETH",
"transaction_hash": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
"value_usd": 2500000,
"chain": "ethereum",
"description": "Large whale transaction detected"
},
"triggering_wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"triggering_news": {
"title": "Whale moves 1000 ETH",
"url": "https://example.com/news",
"text": "Large whale wallet moved significant amount",
"source": "crypto_news"
}
}GET
/api/v1/users/demo_user/signalsGet all signals for a userAI & Recommendations
Generate AI-powered trading recommendations with knowledge graph visualization.
POST
/api/v1/ai/analyzeAnalyze and generate AI recommendation with knowledge graphView Request Body
{
"user_id": "demo_user",
"context_data": {
"market_conditions": "bullish",
"risk_tolerance": "medium",
"time_horizon": "short",
"preferences": {
"tokens": [
"BTC",
"ETH",
"FLR"
]
}
}
}POST
/api/v1/ai/mock-triggerMock AI trigger - automatically finds concerning news and generates signalPOST
/api/v1/ai/generate-strategyGenerate AI strategy for a userView Request Body
{
"user_id": "demo_user",
"context_data": {
"time_horizon": "short",
"risk_level": "medium",
"market_conditions": "volatile",
"holdings": [
{
"token": "BTC",
"amount": 0.5,
"value_usd": 25000
}
]
}
}GET
/api/v1/ai/fdc-status/demo_userGet FDC verification status for a userKnowledge Graph API
Generate knowledge graphs from news, transactions, and entities using Ollama.
POST
/api/v1/ollama-kg/generateGenerate knowledge graph from news and transactionsView Request Body
{
"user_id": "demo_user",
"title": "Crypto Market Analysis - 2026-01-27",
"description": "Knowledge graph generated from news and transactions",
"news": [
{
"text": "Bitcoin price surged to $65,000 today as institutional investors continue to adopt cryptocurrency. Ethereum also saw gains, reaching $3,500. Major exchanges like Coinbase and Binance reported record trading volumes.",
"source": "crypto_news_1"
},
{
"text": "Uniswap V3 launched on Polygon network, enabling cheaper transactions for DeFi users. The protocol now supports multiple chains including Ethereum, Polygon, and Optimism.",
"source": "defi_news_1"
}
],
"transactions": [
{
"from_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"to_address": "0x8ba1f109551bD432803012645Hac136c22C9c8C7",
"token": "ETH",
"amount": 10000,
"tx_hash": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
"timestamp": "2026-01-27T15:28:04.180Z"
}
],
"entities": [
{
"name": "Bitcoin",
"entity_type": "token",
"metadata": {
"symbol": "BTC",
"blockchain": "Bitcoin"
}
},
{
"name": "Ethereum",
"entity_type": "token",
"metadata": {
"symbol": "ETH",
"blockchain": "Ethereum"
}
}
],
"regenerate_news": true,
"return_html": true,
"return_data": true,
"save_to_db": true
}GET
/api/v1/ollama-kg/user/demo_userGet user's knowledge graphsGET
/api/v1/ollama-kg/listList all knowledge graphsTrading Bots
POST
/api/v1/bots/registerRegister a new trading botView Request Body
{
"user_id": "demo_user",
"name": "My Trading Bot v1.0",
"metadata": {
"version": "1.0",
"strategy": "momentum",
"risk_level": "medium",
"description": "Automated trading bot for crypto signals"
}
}Entities
GET
/api/v1/entitiesGet all entitiesNode.js Service - Wallet Mapping
POST
/api/v1/wallets/mapMap wallet and discover sub-walletsView Request Body
{
"wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"wallet_type": "user"
}Node.js Service - Market Data
GET
/api/v1/market/pricesGet prices for multiple symbolsGET
/api/v1/market/price/BTCGet price for a specific symbolNode.js Service - FDC
POST
/api/v1/fdc/requestRequest FDC attestationView Request Body
{
"data_type": "market_data",
"data": {
"price": 50000,
"symbol": "BTC",
"timestamp": "2026-01-27T15:28:04.180Z"
}
}Pricing Tiers
Manage user pricing tiers and subscriptions. Tiers determine access levels and feature availability.
GET
/api/v1/pricing/tier/0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbGet user's current pricing tier by wallet addressGET
/api/v1/pricing/tiersList all available pricing tiersPOST
/api/v1/pricing/tier/upgradeUpgrade user to premium tier after paymentView Request Body
{
"wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"payment_tx_hash": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
}PUT
/api/v1/pricing/tier/0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbUpdate user's pricing tier (admin)View Request Body
{
"tier_id": "premium",
"payment_tx_hash": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
}