Docs/Token data/Security (rug-check)

Security (rug-check)

GET/v1/token/{mint}/securityPublic

On-chain rug-check, read straight off the chain: is the mint/freeze authority renounced, is the metadata mutable, any Token-2022 transfer fee, top-10 concentration, and creation.

Path parameters

FieldTypeDescription
mintrequiredstringToken mint address (base58).

Query parameters

FieldTypeDescription
networkoptionalmainnet | devnetNetwork to read. Devnet returns an empty payload (with a note) until its ingestor lands. default mainnet

Response fields

FieldTypeDescription
mintAuthorityRenouncedbooleantrue = no more tokens can ever be minted.
freezeablebooleantrue = a freeze authority exists (balances can be frozen).
mutableMetadataboolean | nullCan the name/logo still be changed (DAS).
updateAuthoritystring | nullThe metadata update authority.
isToken2022booleanOwned by the Token-2022 program.
transferFeeobject | null{ basisPoints, maxFee } for Token-2022 fee tokens, else null.
nonTransferable / permanentDelegateboolean / stringToken-2022 hazards.
supplyobject{ raw, decimals, uiAmount }.
topHolders.top10AccountsPctnumber | null% held by the top-10 token ACCOUNTS (incl. LP/burn); null = unknown.
creationobject{ slot, unixTime, exact, olderThanScan } — only populated when exact=true.
top10AccountsPct counts token ACCOUNTS — AMM/LP pool vaults and burn accounts included — so a high number isn't necessarily insider concentration. null = supply unknown.
creation is reported only when our bounded signature scan reaches the genuine first signature (exact=true) — which it does for brand-new tokens. For an older, actively-traded token it returns null + olderThanScan=true (= not newly created).