---
title: "Check any Solana or pons token for rug risk, no payment needed"
method: GET
path: "/v1/token_check/{mint}"
tags: ["free"]
---

# Check any Solana or pons token for rug risk, no payment needed

`GET /v1/token_check/{mint}`

## Request

- Base URL: `https://api.loopholetape.com`
- URL: `https://api.loopholetape.com/v1/token_check/{mint}`
- Auth: none required

free, no key and no payment: the coarse pre-trade check of ONE token, the same answer as the MCP tool token_check. Give it a pump.fun mint, any other Solana mint (a thin answer read from the chain), a Robinhood Chain pons 0x curve or token address, or the token's pasted link (pump.fun, GMGN, Solscan, Birdeye, Jupiter, pons, Blockscout): a verdict word (avoid | caution | no_flags_observed by the fixed public rule at /v1/labels), one reason, coverage (full | thin | not_covered) and age, with links to the paid detail; also GET /v1/token_check?mint=<token>. 30 calls an hour per caller by default (429 over it) and a daily cap across all callers; no_flags_observed is not a safety verdict

## Path parameters

- `mint` string, required: A Solana mint (pump.fun or any other), a Robinhood Chain pons 0x curve or token address, or the token's pasted link.

## Response `200`

Successful Response

- unknown

## Other responses

- `400`: two different values, or a link no token could be read from (url_not_recognised, pair_address_not_mint)
- `404`: not a token id: neither a Solana mint, a 0x address nor a link ({ok:false, error:not_a_token})
- `422`: Validation Error
- `429`: the caller's hourly limit or the daily cap across all callers (Retry-After)
- `503`: the pump.fun feed is stale or the checks are starting (feed_stale, checks_unavailable); the call is not counted

---

[API](https://skmtc.dev/loopholetape/apis/loophole-tape.md) · [All operations](https://skmtc.dev/loopholetape/apis/loophole-tape/llms.txt) · [OpenAPI document](https://skmtc.dev/loopholetape/apis/loophole-tape/revisions/eea099d70151?raw)
