{"id":3970160,"recorded_at":"2026-11-07T20:33:46.794751Z","observed_at":"2026-11-07T20:33:46.794616Z","subject_kind":"source_record","subject":"x402_bazaar:https://api.getplexa.com/v1/rug-check","kind":"listing","method":"sync.x402_bazaar/1","body":{"endpoints":[["x402","https://api.getplexa.com/v1/rug-check"]],"name":"api.getplexa.com/v1/rug-check","owner_address":"0xd993eafba87cffa2ca2cff5a56ef89034575a7ef","raw":{"accepts":[{"amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"name":"USD Coin","version":"2"},"maxTimeoutSeconds":300,"network":"eip155:8453","payTo":"0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef","scheme":"exact"},{"amount":"50000","asset":"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359","extra":{"name":"USD Coin","version":"2"},"maxTimeoutSeconds":300,"network":"eip155:137","payTo":"0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef","scheme":"exact"},{"amount":"50000","asset":"0xaf88d065e77c8cC2239327C5EDb3A432268e5831","extra":{"name":"USD Coin","version":"2"},"maxTimeoutSeconds":300,"network":"eip155:42161","payTo":"0xd993eAfBA87cFfa2ca2CFF5A56EF89034575A7ef","scheme":"exact"},{"amount":"50000","asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","extra":{"feePayer":"Hc3sdEAsCGQcpgfivywog9uwtk8gUBUZgsxdME1EJy88"},"maxTimeoutSeconds":300,"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","payTo":"D6FqEyoFvkgGy4PpJjckHc3xRXhzL6mWQ25gz4rkVLor","scheme":"exact"}],"description":"Plexa /v1/pretrade/check — pre-trade token safety check on Base: can you still sell this token? avoid fires only on a trap proven on-chain now: no pool to exit into, an exit pot under 5% of your size, or the trading gate off (the honeypot shape). A drained pot is what a rug leaves behind — measured, not predicted. clear = no provable trap, NOT safe. Alias: same engine and price as /v1/pretrade/check.","extensions":{"bazaar":{"info":{"input":{"body":{"sizeUSD":"1000","token":"0xE014d2A4da6E450f21b5050120D291e63c8940FD"},"bodyType":"json","method":"POST","type":"http"},"output":{"example":{"confidence":"low","coverage":{"axesExpected":5,"axesReporting":4},"liquidityCoverage":{"asOfBlock":51728987,"asOfBlockFirst":51728985,"conclusive":true,"factoriesChecked":13,"poolsFound":8,"singletonPoolsCounted":7,"singletonPoolsHooked":1,"singletonPoolsRejected":22,"singletonPoolsSeen":31,"singletonScanTruncated":true,"unmeasuredVenueNames":[],"unmeasuredVenues":0,"venuesUnread":0},"market":{"holderCount":31524,"marketCapUsd":2018589,"priceUsdSpot":0.000561,"volume24hUsd":75517.39},"quote":{"confidence":"low","depthAtSize":1763662.4571789096,"direction":"buy","executablePrice":1763.6624571789096},"reasons":["no provable trap detected. This is NOT a safety rating: it means none of the checks that can PROVE a trap (NO_EXIT_VENUE, EXIT_LIQUIDITY_DRAINED, TRADING_DISABLED) fired at this block, AND the liquidity sweep reached a conclusion (liquidityCoverage.conclusive). Structural risk — age, holder concentration, liquidity depth, transfer restrictions — is reported in risk_profile and can still be severe","hook-refused-quote — a Uniswap v4 pool whose hook has swap permissions rejected our quoter's simulation of the sale (a third-party quote), so that sale was not measured this call; no sale through that pool was observed in blocks 51426586–51728985, at most 7 days — see observedExit","not checked: independent price cross-check (a Chainlink feed, or a second venue pricing the same pair) — no Chainlink feed and no on-chain price on the 12 priced venue(s) of base. Reported as unknown, never as clean; confidence reduced accordingly","route-search-skipped:direct-exit-sufficient — the first hop already cleared the floor, so we did NOT enumerate exotic roads for this token: a better road may exist and was not looked for"],"risk_profile":{"age":{"ageDays":455.03,"genesisBlock":32071499},"concentration":{"ageSec":null,"poolsExclusion":"applied","source":"graph","stale":false,"top10Bound":"lower","top10SharePct":88.0185,"top10SharePctInclPools":90.0863,"top1SharePct":64.0204},"liquidity":{"exitLiquidityUsd":977.2,"exitPoolInventoryUsd":116037.32,"exitPotBasis":"position-sale","poolCount":8,"venueCount":1},"oracle":{"deviationBps":null,"source":null},"transferability":{"fingerprints":"none","hasBlacklist":false,"tradingEnabled":null}},"sources":{"*":"measured","market":"vendor:dexscreener+goplus","market.holderCount":"vendor:goplus","risk_profile.concentration":"vendor:graph"},"triggers":[],"ts":1790247323121,"validUntil":1790247326121,"verdict":"clear"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"examples":[{"sizeUSD":"1000","token":"0xE014d2A4da6E450f21b5050120D291e63c8940FD"}],"properties":{"chain":{"description":"Optional, default \"base\". One of: base | polygon | matic | arbitrum | arbitrum-one | arb | eip155:8453 | eip155:137 | eip155:42161 — case-sensitive (see `enum`). The safety flags are Base-tuned, so a non-base value currently answers 422 rather than returning Base-calibrated flags for another chain.","enum":["base","polygon","matic","arbitrum","arbitrum-one","arb","eip155:8453","eip155:137","eip155:42161"],"type":"string"},"sizeUSD":{"description":"Optional USD notional for the executable-quote sub-result, default \"1000\". A STRING, not a number; positive, no thousands separator (\"1,000\" is rejected) — see `pattern`.","maxLength":78,"pattern":"^(?:0\\.\\d*[1-9]\\d*|[1-9]\\d*(?:\\.\\d+)?)$","type":"string"},"token":{"description":"ERC-20 to vet before buying. 0x + 40 hex (see `pattern`) — a symbol like \"WETH\" is rejected with 400.","pattern":"^0x[0-9a-fA-F]{40}$","type":"string"}},"required":["token"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"properties":{"confidence":{"description":"high | medium | low. On \"avoid\" this is confidence IN THE TRIGGER, which is a measurement taken this call, so it is always \"high\" — a check that failed elsewhere does not make the measured trap less true. On \"clear\" it is how COMPLETE the checks were: fewer axes computed, lower confidence. On \"unknown\" it is capped at \"low\" by construction: the check the verdict depends on did not finish, so a high number there would contradict the verdict word next to it. Either way the gaps are reported explicitly — see `reasons` and the null fields in `risk_profile`.","type":"string"},"quote":{"description":"Executable quote sub-result (realizable fill under size, not mid/spot)","type":"object"},"reasons":{"description":"Human-readable reasons behind the verdict","items":{"type":"string"},"type":"array"},"risk_profile":{"description":"Structural risk as measured DATA (age, concentration, liquidity incl. exitLiquidityUsd, oracle availability, transfer restrictions), each section with a plain-language note. Never a severity: these factors do not separate live from dead tokens [M, n=40].","type":"object"},"triggers":{"description":"Proven traps that fired — CLOSED list (NO_EXIT_VENUE, EXIT_LIQUIDITY_DRAINED, TRADING_DISABLED), empty when verdict is \"clear\".","items":{"type":"string"},"type":"array"},"verdict":{"description":"avoid | clear | unknown. \"avoid\" = a listed trap was PROVEN at this block (see `triggers`); \"clear\" = none of them fired AND the liquidity sweep reached a conclusion; \"unknown\" = none fired but the sweep did NOT reach a conclusion (`liquidityCoverage.conclusive: false`), so absence of a trap is not established — see the `exit-coverage-incomplete:<what>` line in `reasons`. \"clear\" is NOT a safety rating and NOT a prediction — structural risk lives in `risk_profile`. verdict semantics changed 2026-08-01 (v2): avoid = provable trap only; ok/caution are gone. 2026-08-27 (P67): a THIRD value \"unknown\" was added — it takes over the cases that used to answer \"clear\" while `liquidityCoverage.conclusive` was false. No existing value changed meaning; code branching on \"avoid\" is unaffected, and code branching on \"clear\" now gets strictly fewer, better-founded clears. 2026-09-21 (P96): a clear verdict now also requires the MEASURED sale of your position to return at least 90% of the size you asked about. Below that the answer is \"unknown\" with the reason exit-below-90pct — no trap was proven, but the exit we measured is not there at this size. Again strictly fewer clears; avoid is untouched.","type":"string"}},"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}},"builder-code":{"info":{"a":"bc_g9x4yzn7"},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"a":{"description":"App builder code","pattern":"^[a-z0-9_]{1,32}$","type":"string"},"s":{"description":"Service builder codes","items":{"pattern":"^[a-z0-9_]{1,32}$","type":"string"},"type":"array"},"w":{"description":"Wallet builder code","pattern":"^[a-z0-9_]{1,32}$","type":"string"}},"type":"object"}}},"lastUpdated":"2026-10-26T19:15:33.642Z","quality":{"l30DaysTotalCalls":1,"l30DaysUniquePayers":1,"lastCalledAt":"2026-10-26T19:15:33.309Z"},"resource":"https://api.getplexa.com/v1/rug-check","type":"http","x402Version":2},"source":"x402_bazaar","summary":"Plexa /v1/pretrade/check — pre-trade token safety check on Base: can you still sell this token? avoid fires only on a trap proven on-chain now: no pool to exit into, an exit pot under 5% of your size, or the trading gate off (the honeypot shape). A drained pot is what a rug leaves behind — measured, not predicted. clear = no provable trap, NOT safe. Alias: same engine and price as /v1/pretrade/check."},"body_sha256":"d6f961d1075027c99b6773ee452e16cc2ffa4a57b307c0d2aab791ac2e3fa2c0","prev_id":408845,"leaf":"0x2315bd78870bbfbdc92d38ed2fe3bc845cb512e54084c362011214567b4a1931","leaf_text":"{\"body\":\"d6f961d1075027c99b6773ee452e16cc2ffa4a57b307c0d2aab791ac2e3fa2c0\",\"id\":3970160,\"kind\":\"listing\",\"method\":\"sync.x402_bazaar/1\",\"observed_us\":1794083626794616,\"prev\":408845,\"subject\":\"x402_bazaar:https://api.getplexa.com/v1/rug-check\",\"subject_kind\":\"source_record\"}","day":{"day":"2026-11-07","leaves":195826,"root":"0x17da9e85e1b138541355d33543ff34e3503cd3a49d37728fb53643e2a0416a2d","chained":"0xed34bd4af17282643de8cb9591c84d0aa1b39e1e9ae9864941e543f5a15718cb","anchor_chain":"eip155:5042002","anchor_tx":"0xc3f6784179e0ca32236ba89472473e882a81d03fcc5ce27ca58ded2e01e112aa","anchor_block":71280839},"proof":["0x2315a156ab04fc5c55d8f76757494f6195761f287aa4f48a7079d708bbf0f72c","0xd288dfcca0703d58fbb05787590f27e7293eb90518c785fc54f99c2ab47f4956","0x71458236b1b2d570225f59b8123194e8079a8fea343bae7f00bd1c83df0c9c4f","0xa44c90273d7b89095215d2dba900fc33222192fcb554663f9684a6d78148d29e","0x60decdce1915abf1e4342055b6c6985ffd9acda7e25df1415c73e0560bd812cc","0x7b40f4ddf25eea99a29e7162c6a634daa7c964f6738c92ca03504313299697f9","0xeea800556fd320c970720c50519959f0cab0b60628b053694b8afd0b62f0d86e","0x710bacdab214ae98ae7edeec68299d89b9723b0ba1111d40ccb287ffa5686a93","0x65b89d133ccaad2d0fc51b559632f22cffebf16226a688c5f80888dbb33b797b","0x5ec004a5bfd474939b41d2be465e6c553f8db464b087dcec630cee8bc4985d3a","0x5327b3c8bd6c66bc8664ac89a09c86c7ee82b045c7005b4f4ab142666a671440","0x0465b8266eaef71f646fba2c9eabc71b52d4141cfccb7aa23e0fc993adc4c7ae","0x78453dc4e9c270f39d15a1727634a7f24b351d301dd0f7a85d7c6f2ffdf65ffd","0xd1a33ae0335e7cea3634b4772bc65ab22ff7615b5af0fac5752d839e8f2c17ec","0x22002567dfb80a697b73b13f0cc7ab99ac0c0bd9ea84bf4883eeb09f86036e24","0x80bdd907e4cabf074c5e8d919e88abbc805de47d0c5c142e281a67157f82926f","0x54292a94f447f1fd33c01b5c99da465043f11022958626a2ea562c457fef697a","0xff23fa8a9de3f957315ef0dfe7e8d8f6b1a51dae05fef7615c59794e019ff05c"]}