{"slug": "risk-data-api-solana-token-risk-scoring-for-ai-trading-agents", "title": "Risk-Data API – Solana token risk scoring for AI trading agents", "summary": "TNT House has launched a Risk-Data API that returns a safety score, live insider-cluster detection, and on-chain fundamentals for any Solana token mint via a single GET request, designed for AI trading agents. The API, which powers TNT House audits, exposes clean JSON for bots and includes fields such as safety_score (0–100), insider_clusters, and holder_distribution, with 15 free requests per calendar day per key.", "body_md": "# Know what a token is hiding before your bot buys it.\n\nOne GET request returns a safety score, live insider-cluster detection, and on-chain fundamentals for any Solana mint — the same engine behind TNT House audits, exposed as clean JSON for bots instead of a dashboard for humans.\n\n```\ncurl \"https://tnt-audit.com/api/v1/token-risk?mint=<MINT_ADDRESS>\" \\\n  -H \"Authorization: Bearer tnt_sk_your_key_here\"\n{\n  \"mint\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n  \"safety_score\": 78,\n  \"cluster_analysis\": \"complete\",\n  \"insider_clusters\": [\n    {\n      \"funder\": \"9xQe...k2Pd\",\n      \"wallets\": [\n        \"7uF3...aZ1\",\n        \"3mN8...qR2\"\n      ]\n    }\n  ],\n  \"mint_authority\": {\n    \"revoked\": true,\n    \"address\": null\n  },\n  \"freeze_authority\": {\n    \"revoked\": true,\n    \"address\": null\n  },\n  \"honeypot_risk\": null,\n  \"lp_locked\": null,\n  \"holder_distribution\": {\n    \"risk_level\": \"LOW\",\n    \"largest_holder_percent\": 4.2,\n    \"top10_percent\": 22.7,\n    \"holder_count\": 20\n  },\n  \"market\": {\n    \"price_usd\": 0.0000412,\n    \"liquidity_usd\": 84210,\n    \"volume_24h_usd\": 512300,\n    \"price_change_24h_percent\": 12.4,\n    \"age_days\": 3\n  },\n  \"note\": \"honeypot_risk and lp_locked detection are on the roadmap and not yet implemented.\",\n  \"checked_at\": \"2026-07-18T12:00:00.000Z\"\n}\n```\n\nWorks out of the box with ChatGPT Custom GPT Actions (just paste the URL). For Claude, Gemini, or agent frameworks like LangChain/CrewAI, use this spec as the schema source for your own tool integration — most of those need a small adapter, LangChain's OpenAPISpec.from_url() being the one that imports it directly.\n\n## How it works\n\nEnter your email below. No credit card, no approval wait — the key is issued instantly.\n\nGET /api/v1/token-risk?mint=<address> with your key in the Authorization header. Typical response time: well under a second.\n\nFirst-ever check on a mint returns cluster_analysis: \"pending\" while the insider trace runs in the background — re-check in a minute or two for the full picture.\n\n## Response fields\n\n`safety_score`\n\n0–100. Weighted from authorities, holder concentration, liquidity, volume, and real insider-cluster penalties.\n\n`insider_clusters`\n\nWallets that share a first-funder — an on-chain-provable insider/sniper signal, not a guess.\n\n`cluster_analysis`\n\n\"pending\" on a token's first-ever check (cluster trace runs in the background), \"complete\" after ~1–2 minutes.\n\n`mint_authority / freeze_authority`\n\nWhether each authority is revoked, and its address if still active.\n\n`honeypot_risk / lp_locked`\n\nOn the roadmap — currently always null.\n\n`holder_distribution`\n\nLargest holder %, top-10 %, risk level, and holder_count — the number of accounts in Solana’s top-20-largest-holders response (a real RPC limit, not a full holder count for widely-held tokens like BONK or USDC).\n\n`market`\n\nLive price, liquidity, 24h volume, 24h change, and token age from DexScreener.\n\nEvery response also includes X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers — plus X-Credit-Balance-Usd once you have a paid tier or credit balance — so your bot can track its quota without ever hitting a 429.\n\nWebhooks for cluster_analysis completion are on the roadmap, not yet available — for now, re-check the same mint after 1-2 minutes.\n\n## Rate Limiting\n\nEvery key gets 15 free requests per calendar day (UTC). Go over that with no call-credit balance and you get a 402, not a silent block — top up or subscribe and the same key keeps working immediately.\n\n`X-RateLimit-Limit`\n\nYour daily quota. Empty on unlimited/admin-issued keys.\n\n`X-RateLimit-Remaining`\n\nRequests left before the free quota runs out today.\n\n`X-RateLimit-Reset`\n\nISO timestamp of the next quota reset (next UTC midnight, or your subscription renewal date).\n\n`X-Credit-Balance-Usd`\n\nYour current call-credit balance, once you have one.\n\nYou get an HTTP 402 with a JSON body — limit, used, reset_at, overage_rate_usd, and an upgrade_url. No retries needed: as soon as you top up credit or subscribe, the same key starts working again on the very next call.\n\n```\nHTTP/1.1 402 Payment Required\nX-RateLimit-Limit: 15\nX-RateLimit-Remaining: 0\nX-RateLimit-Reset: 2026-07-24T00:00:00.000Z\n\n{\n  \"error\": \"Daily free-tier limit reached and call-credit balance is empty\",\n  \"limit\": 15,\n  \"used\": 16,\n  \"reset_at\": \"2026-07-24T00:00:00.000Z\",\n  \"overage_rate_usd\": 0.07,\n  \"upgrade_url\": \"https://tnt-audit.com/risk-api#billing\",\n  \"note\": \"Top up call credits or subscribe on the upgrade_url page — overage is billed at $0.07/call once you have a balance.\"\n}\n```\n\nCheck X-RateLimit-Remaining before firing off a batch of calls — reading a header costs nothing, a wasted 402 does not.\n\n## Versioning & Changelog\n\nThe API is versioned in the URL (/api/v1/...). Within v1, existing fields are never removed, renamed, or repurposed — only added. Integrations should ignore fields they don't recognize rather than fail on them. A genuinely breaking change ships as /api/v2/..., with v1 kept running for a reasonable overlap period — never a silent in-place break.\n\n`v1.8`\n\n2026-07-27- • Added GET /api/v1/token-risk/x402 — pay-per-call access via the x402 protocol (USDC on Solana), no API key required. Same price as the existing pay-per-call rate.\n- • Published as an x402-discoverable resource on x402scan.com, with an OpenAPI x-payment-info schema for automated agent discovery.\n\n`v1.7`\n\n2026-07-26- • Published as an MCP server on Smithery.ai and Glama.ai, alongside the Official MCP Registry — usable directly as a tool by Claude, Cursor, and other MCP-compatible agents.\n- • Published npm plugins for ElizaOS (eliza-plugin-tnt-risk-api) and Solana Agent Kit (solana-agent-kit-plugin-risk-api).\n\n`v1.6`\n\n2026-07-25- • Published to the Official MCP Registry, mcp.so, RapidAPI, and the Postman Public API Network — more ways to discover and integrate the API.\n\n`v1.5`\n\n2026-07-23- • Published a ready-to-import Postman collection.\n\n`v1.4`\n\n2026-07-21- • Published a formal OpenAPI 3.0 spec at /openapi.json.\n- • Rebalanced upstream timeout budget for very large/liquid mints, further reducing false holder_distribution failures.\n\n`v1.3`\n\n2026-07-19- • Billing security hardening against invoice/payment-matching abuse — no response schema change.\n\n`v1.2`\n\n2026-07-18- • Fixed timeouts on upstream calls that could occasionally return a raw 502 on slower, less-major tokens.\n- • Fixed holder_distribution occasionally reporting holder_count: 0 on high-volume tokens due to a swallowed RPC failure.\n- • Fixed implausible price_change_24h_percent values passed through from upstream market data.\n\n`v1.1`\n\n2026-07-18- • Added X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset headers, later joined by X-Credit-Balance-Usd.\n\n`v1.0`\n\n2026-07-18- • Public launch: GET /api/v1/token-risk — safety_score, insider_clusters, mint/freeze authority, holder_distribution, market data.\n- • API-key auth, free tier + pay-per-call + subscription billing via Solana Pay.\n\nNo mailing list or webhooks yet for update announcements — this page and the X / Telegram links in the footer are the way to stay current.\n\n## Limits & pricing\n\n- Full response schema\n- Insider-cluster detection\n- No credit card\n\n- Top up any amount $5–$500\n- Only charged past the free 15/day\n- Drops to $0.03/call once subscribed\n\n- 1000 calls included\n- $0.03/call overage after that\n- Manual renewal — no auto-charge\n\nPaid in $MRDT / SOL / USDC via Solana Pay — same payment flow as the rest of TNT House. Solana Pay can't auto-charge, so the subscription is a manual 30-day top-up, not a recurring subscription in the traditional sense.\n\n## Manage billing\n\nSubscribe for 1000 calls/30 days, or top up pay-per-call credits. Paid in $MRDT / SOL / USDC via Solana Pay — same flow as the rest of TNT House.\n\nInstant, free, no card required.", "url": "https://wpnews.pro/news/risk-data-api-solana-token-risk-scoring-for-ai-trading-agents", "canonical_source": "https://www.tnt-audit.com/risk-api", "published_at": "2026-07-28 09:16:46+00:00", "updated_at": "2026-07-28 09:23:00.765476+00:00", "lang": "en", "topics": ["ai-tools", "ai-agents", "artificial-intelligence"], "entities": ["TNT House", "Solana", "ChatGPT", "LangChain", "CrewAI", "DexScreener"], "alternates": {"html": "https://wpnews.pro/news/risk-data-api-solana-token-risk-scoring-for-ai-trading-agents", "markdown": "https://wpnews.pro/news/risk-data-api-solana-token-risk-scoring-for-ai-trading-agents.md", "text": "https://wpnews.pro/news/risk-data-api-solana-token-risk-scoring-for-ai-trading-agents.txt", "jsonld": "https://wpnews.pro/news/risk-data-api-solana-token-risk-scoring-for-ai-trading-agents.jsonld"}}