---
title: "List new Solana tokens on pump.fun, screened by verdict"
method: GET
path: "/v1/launches/screened"
tags: ["paid"]
---

# List new Solana tokens on pump.fun, screened by verdict

`GET /v1/launches/screened`

## Request

- Base URL: `https://api.loopholetape.com`
- URL: `https://api.loopholetape.com/v1/launches/screened`
- Auth: none required

Use when a screener wants the newest Solana memecoins on pump.fun already screened in one call, instead of a discovery call plus one rug check per token; for one mint use the $0.01 verdict (GET /v1/verdict). The newest covered pump.fun launches (default the last 15 min; mayhem-class launches left out, as on the radar) whose verdict is not avoid under the fixed public rule of /v1/verdict (/v1/labels), ranked by calibrated P(true graduation) (/v1/calibration), highest first, up to 50 per call. Each item: the verdict word (caution or no_flags_observed), the one-line reason and up to three reasons, P(true graduation), P(rug within 5 min) for mints under 30 s, age, curve SOL, buys and links to the verdict, the rug check and the full card; scanned and avoid_skipped count what was read and left out. Feed lag <= 5 s required: a stale feed or an empty screen is refused unpaid. no_flags_observed is not a safety guarantee. Each item also carries market (USD price, market cap = price x total supply as pump.fun and DexScreener show it, the curve's SOL liquidity in SOL and USD) and authorities (mint, freeze, metadata; the pump.fun program rule).

## Query parameters

- `limit` integer
- `max_age_s` number

## Response `200`

Paid response (header PAYMENT-RESPONSE carries the settlement)

- Envelope
  - `ok` boolean, required
  - `schema_version` '2.0', required
  - `generated_at` string, date-time, required
  - `t` number, required: unix seconds at generation
  - `coverage` 'full' | 'thin', required: the mint is inside our live window (created while our captur / thin = the mint is not in the live window (older than ~2 h of silen
  - `data` object, required
  - `meta` object, required
    - `source` string
    - `version` string
    - `feed_lag_s` number, nullable: seconds between the newest event in our tape and now (the age of the newest event we ingested; it does not say whether the capture runs behind the chain, see chain_lag_s)
    - `is_stale` boolean: the ingest age (feed_lag_s) exceeds the route's freshness limit (5 s for compact risk checks, 30 s otherwise); a paid or keyed pump.fun request is also refused above 5 s of estimated chain lag when the gate enforces (see chain_lag_s, tape_behind), which this flag does not show
    - `chain_lag_s` number, nullable: estimated seconds the newest slot in our pump.fun tape is behind the Solana RPC's processed tip (slots_behind x the measured slot time, to 0.1 s); null when the tip is unknown; absent on Robinhood Chain answers
    - `slots_behind` integer, nullable: estimated slots between the newest slot in our pump.fun tape and the Solana RPC's processed tip (a tip read every 30 s, carried forward by the wall time since at the slot rate our own reads measure); 0 when the tape is at or ahead of the estimate; null when the tip is unknown
    - `tape_behind` boolean, nullable: true when the estimated chain_lag_s is above 5 s, false within 5 s, null when there is no tip to compare; on pump.fun answers only
    - `last_slot` integer, nullable
    - `price_usd` number, nullable
    - `next` object: related resources worth calling next (paths relative to base_url)
    - `disclaimer` string

## Other responses

- `402`: Payment required (x402 v2): header PAYMENT-REQUIRED = base64 of the body
- `422`: Validation Error

---

[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)
