Solana token safety check API
One call returns safe, caution or avoid for any Solana token mint, with reasons: mint and freeze authority, Token-2022 transfer fees, hooks and permanent delegates, liquidity, pool age, holder concentration and a live sell-route test.
Before a trading agent buys a Solana token, it should know three things: can the team mint more or freeze my tokens, is there a hidden Token-2022 trap (a transfer fee, a transfer hook or a permanent delegate that can take tokens back), and can I actually sell it. GET /solana/token-verdict answers all of that in one JSON object for $0.02.
What it checks
- Authorities read from the mint account on Solana mainnet: mint authority and freeze authority, and whether each was renounced.
- Token-2022 extensions: transfer fee (bps), transfer hook program, permanent delegate, non-transferable, default-frozen accounts and pausable.
- Market: DEX liquidity in USD, first-pool age, and a live sell-route test that quotes selling about $1,000 to USDC and reports the price impact.
- Holders: holder count and how much of the supply the top holders own.
- Verdict:
safe,cautionoravoid, an A-F grade, a 0-100 score and plain reasons. Every response hasasOfandsources.
Issuer-run stablecoins (USDC, USDT, PYUSD) keep mint and freeze power by design, so those are reported as notes, not penalties.
Example
GET /solana/token-verdict?mint=DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263
Trimmed real response for BONK on Nov 11, 2026:
{
"mint": "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
"token": { "name": "Bonk", "symbol": "Bonk", "program": "spl-token" },
"authorities": { "mintRenounced": true, "freezeRenounced": true },
"market": {
"liquidityUsd": 5891894,
"firstPoolAt": "2023-05-11T17:09:10Z",
"sellTest": { "routeFound": true, "sizeUsd": 1000, "priceImpactPct": 0.065 }
},
"holders": { "holderCount": 1027332, "topHoldersPct": 31.17 },
"verdict": { "rating": "safe", "grade": "A", "score": 100,
"reasons": ["No red flags from on-chain and market checks"] }
}
Pay per call on Solana or Base
An unpaid request returns HTTP 402 offering USDC on Solana and on Base. Any x402 client can pay it, and a bad or unknown mint gets a 400 or 422 before payment, so you are never charged for it. The route is also a tool called solana_token_verdict on the remote MCP server.
What it does not do
It is a heuristic read, not an audit. It does not simulate a sell from your own wallet, read transfer-hook program code or judge the team. Use it as a fast filter, not a guarantee.
Try it free
Get a free API key (100 calls a month, no card), then pass it in the x-api-key header. This route uses 1 call of the monthly quota.
curl -X POST https://signals.incomefather.com/billing/free \
-H 'content-type: application/json' -d '{"email":"you@example.com"}'
curl -H "x-api-key: $TRADING_SIGNALS_API_KEY" \
"https://signals.incomefather.com/solana/token-verdict?mint=DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263"
Agents that hold a wallet can skip the key entirely and pay per call over x402 (see x402 pay-per-call market data). Copy-paste code for curl, JavaScript, Python, MCP (Claude Desktop, Cursor, Cline), LangChain and the OpenAI Agents SDK is in gdietsch/trading-signals-examples.
More guides
- ES futures session brief API
- SEC insider buying API
- AI trade brief API for agents
- OFAC sanctions screening API for crypto addresses and names
- Wallet pay-readiness API for Base and Solana
- SEC 13F holdings API for fund portfolios and notable holders
- Token pre-trade check API for Solana and Base
- CFTC COT positioning screener API
- Treasury auction and yields API
- x402 pay-per-call market data