Solana token risk report (full)
POST /api/sol-token-reportFull RugCheck report for a Solana token mint, trimmed to what an agent acts on: score and risks, mint/freeze authority state, metadata mutability and update authority, supply and decimals, creator and creator balance, top 20 holders with percent, owner, insider flag and pool/locker labels, concentration totals, the deepest markets (liquidity, LP locked %), lockers, total market liquidity, LP providers, holder count, rugged flag, insider-network count, launchpad and transfer-fee config. One request; blue-chip reports run to megabytes upstream and come back here in a few KB.
Input
| Field | Type | Description |
|---|---|---|
mint * | string | Base58 SPL token mint address. |
marketLimit | number | Deepest markets to include (1-25, default 5). |
holderLimit | number | Top holders to include (1-20, default 20). |
Example output
{
"mint": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"token": {
"name": "Jupiter",
"symbol": "JUP",
"decimals": 6,
"supply": 6862431164.93,
"tokenProgram": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"metadataMutable": true,
"updateAuthority": "61aq585V8cR2sZBeawJFt2NPqmN7zDi1sws4KLs5xHXV"
},
"authorities": {
"mint": {
"revoked": true,
"address": null
},
"freeze": {
"revoked": true,
"address": null
}
},
"score": 3550201,
"scoreNormalised": 97,
"rugged": false,
"risks": [],
"riskCounts": {
"danger": 0,
"warn": 0,
"info": 0
},
"creator": null,
"creatorBalance": 0,
"launchpad": null,
"detectedAt": "2024-05-29T00:40:51Z",
"priceUsd": 0.2027,
"totalMarketLiquidityUsd": 3585833.66,
"totalLpProviders": 173,
"totalHolders": 2873512,
"insiderNetworks": 0,
"transferFee": {
"pct": 0,
"maxAmount": 0
},
"holders": {
"rows": [
{
"tokenAccount": "6G4X...",
"owner": "EXJH...",
"uiAmount": 1700000000.1,
"pct": 24.77,
"insider": false,
"label": null
}
],
"concentration": {
"top1Pct": 24.77,
"top5Pct": 57.67,
"top10Pct": 66.1,
"top20Pct": 75.2,
"top10PctExcludingPools": 66.1,
"insiderHolders": 0,
"labeledPoolOrLockerAccounts": 0
}
},
"markets": {
"total": 1409,
"rows": [
{
"pool": "C8Gr...",
"type": "meteoraDlmm",
"mintA": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"mintB": "So11111111111111111111111111111111111111112",
"liquidityUsd": 1260729.15,
"lpLockedPct": 0,
"lpLockedUsd": 0,
"lpProviders": 0
}
]
},
"lockers": {
"total": 2,
"rows": []
},
"source": "rugcheck",
"fetchedAt": "2026-08-22T12:00:00.000Z"
}
Try it - see the 402 challenge (free)
curl -i -X POST https://agent402.tools/api/sol-token-report \
-H "Content-Type: application/json" \
-d '{"mint":"JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN","marketLimit":5,"holderLimit":10}'
The response is HTTP 402 Payment Required with exact payment requirements. Any x402 v2 client pays automatically and retries:
Paid call (JavaScript agent)
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agent402.tools/api/sol-token-report", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"mint": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"marketLimit": 5,
"holderLimit": 10
}),
});
Related tools
Crypto order book
GET /api/crypto-orderbookL2 order-book snapshot for a spot pair: best bid/ask, mid price, spread (absolute + %), and the top N aggregated price l…
try in playground →Stablecoin peg monitor
GET /api/stablecoin-pegLive $1-peg deviation for the top USD stablecoins (USDT, USDC, USDS, DAI, USDe, PYUSD, USDD, TUSD, FDUSD by default, or …
try in playground →Wallet balance (native + ERC-20)
POST /api/wallet-balanceLook up the native coin balance (ETH/MATIC) plus every ERC-20 holding for a wallet address on Ethereum, Base, Polygon, A…
try in playground →