{"x402Version":2,"payTo":"0x8C8A81E2acEc6ed62421f1f4E7125B0b84FFffdE","resources":[{"id":36444,"slug":"36444","resource":"https://tokencheck.402api.dev/v1/seller-check","description":"Call before paying an unfamiliar x402 endpoint, or to pick between providers. $0.02, usually <1 s plus one probe: live unpaid probe (status, latency, TLS, PAYMENT-REQUIRED decoded and sanity-checked), seller reputation from indexed on-chain USDC payments to its Base payTo (24 h/7 d count, distinct payers, total and median USD, top-payer share), Bazaar listing and price, and a looks legit/caution/avoid verdict citing each fact. Errors: 400/503 JSON {error}, not charged.","type":"http","serviceName":"402api Seller Check","resourceType":"Monitoring","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","payTo":"0x8C8A81E2acEc6ed62421f1f4E7125B0b84FFffdE","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"20000","amountUsd":0.02,"maxTimeoutSeconds":300}],"outputSchema":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the seller report","properties":{"bazaar":{"description":"listed, listing (description, amount, 30-day calls/payers), other listings for the payTo","type":"object"},"cached":{"type":"boolean"},"index":{"type":"object"},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"payTo":{"type":["string","null"]},"probe":{"description":"status, ms, tls, x402 (version, valid, accepts with recognised asset, usd, payTo)","type":["object","null"]},"query":{"type":"object"},"reasons":{"items":{"type":"string"},"type":"array"},"reputation":{"description":"last24h / last7d: payments, distinctPayers, totalUsd, medianUsd, topPayerShare, complete","type":["object","null"]},"verdict":{"enum":["looks legit","caution","avoid"]}},"required":["verdict","reasons","bazaar","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"},"extensions":{"bazaar":{"info":{"input":{"discoverable":true,"method":"GET","queryParams":{"url":"https://tokencheck.402api.dev/v1/token-check"},"type":"http"},"output":{"example":{"bazaar":{"catalogRefreshedAt":"2026-10-09T23:20:22.525Z","catalogSize":34791,"listed":true,"listing":{"amount":"5000","asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","calls30d":4581,"description":"Health check ping","firstSeenByIndexer":"2026-10-09T23:20:21.000Z","lastCalledAt":"2026-10-09T18:46:08.848Z","lastSeenByIndexer":"2026-10-09T23:20:21.000Z","lastUpdated":"2026-10-09T21:29:46.127Z","method":"GET","network":"eip155:8453","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","payers30d":110,"resource":"https://www.api-xpay.com/x402/ping","serviceName":"X Pay"},"listingsForPayTo":14,"otherListings":[{"calls30d":4539,"description":"Payment receipt with transaction details","resource":"https://www.api-xpay.com/x402/payment"},{"calls30d":4357,"description":"Service status and payment configuration","resource":"https://www.api-xpay.com/x402/status"}]},"index":{"indexedThroughBlock":52401878,"indexedThroughTime":"2026-10-10T00:45:03.000Z","payTosFullyBackfilled":1494,"payTosTracked":1494},"measuredAt":"2026-10-10T00:45:31.943Z","notes":["Measured facts, not advice. Incoming USDC counts every transfer to the payTo, not only x402 settlements; distinct payers can still be one operator with many wallets."],"payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","probe":{"measuredAt":"2026-10-10T00:45:30.978Z","method":"GET","methodNote":"GET without payment","ms":890,"ok":true,"status":402,"tls":{"daysLeft":61,"issuer":"Let's Encrypt","ok":true,"validTo":"2026-12-10T09:14:50.000Z"},"url":"https://www.api-xpay.com/x402/ping","x402":{"accepts":[{"amountAtomic":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","maxTimeoutSeconds":60,"network":"eip155:8453","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","problems":[],"recognised":"USDC on Base","scheme":"exact","usd":0.005}],"description":"Health check ping","problems":[],"resourceUrl":"https://www.api-xpay.com/x402/ping","source":"PAYMENT-REQUIRED header","valid":true,"version":2}},"query":{"payTo":null,"url":"https://www.api-xpay.com/x402/ping"},"reasons":["Unpaid GET answered 402 with valid x402 v2 requirements (PAYMENT-REQUIRED header): $0.005 USDC on Base to 0x589a2314a2e05f45e40c4823da3ba58d421db3d8 in 890 ms.","Listed in the CDP Bazaar as \"X Pay\" (Bazaar reports 4,581 calls / 110 payers in 30 d).","20,049 USDC payment(s) from 137 distinct payer(s), $2,276.68 total, in the last 7 d."],"reputation":{"firstPaymentSeen":"2026-10-03T00:45:15.000Z","indexed":true,"indexedThroughBlock":52401878,"last24h":{"complete":true,"coveredSince":"2026-10-09T00:45:05.000Z","distinctPayers":17,"medianUsd":0.005,"payments":1930,"topPayerShare":0.29,"totalUsd":409.22096},"last7d":{"complete":true,"coveredSince":"2026-10-03T00:45:05.000Z","distinctPayers":137,"medianUsd":0.005,"payments":20049,"topPayerShare":0.073,"totalUsd":2276.67891},"method":"USDC Transfer events on Base whose recipient is this address, indexed continuously by 402api from eth_getLogs (every incoming USDC transfer counts, not only x402 settlements; amounts in USD at 1 USDC = $1)","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8"},"verdict":"looks legit"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"discoverable":{"const":true},"method":{"enum":["GET"],"type":"string"},"queryParams":{"properties":{"payTo":{"description":"A seller's Base payTo address (reputation + its most-called Bazaar resource is probed). Give this or url.","pattern":"^0x[0-9a-fA-F]{40}$","type":"string"},"url":{"description":"The x402 resource URL you are about to pay (http/https). Give this or payTo.","maxLength":2048,"pattern":"^https?://","type":"string"}},"type":"object"},"type":{"const":"http","type":"string"}},"required":["type","method"],"type":"object"},"output":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the seller report","properties":{"bazaar":{"description":"listed, listing (description, amount, 30-day calls/payers), other listings for the payTo","type":"object"},"cached":{"type":"boolean"},"index":{"type":"object"},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"payTo":{"type":["string","null"]},"probe":{"description":"status, ms, tls, x402 (version, valid, accepts with recognised asset, usd, payTo)","type":["object","null"]},"query":{"type":"object"},"reasons":{"items":{"type":"string"},"type":"array"},"reputation":{"description":"last24h / last7d: payments, distinctPayers, totalUsd, medianUsd, topPayerShare, complete","type":["object","null"]},"verdict":{"enum":["looks legit","caution","avoid"]}},"required":["verdict","reasons","bazaar","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}}},"tags":["x402","seller-reputation","trust","provider-selection","pre-payment-check","bazaar"],"sourceHost":"tokencheck.402api.dev","lastUpdated":"2026-10-10T15:25:21.104Z","quality":{"calls30d":2,"uniquePayers30d":1,"lastCalledAt":"2026-10-10T15:26:19.487Z"},"metadata":{"serviceName":"402api Seller Check","extensions":{"bazaar":{"info":{"input":{"discoverable":true,"method":"GET","queryParams":{"url":"https://tokencheck.402api.dev/v1/token-check"},"type":"http"},"output":{"example":{"bazaar":{"catalogRefreshedAt":"2026-10-09T23:20:22.525Z","catalogSize":34791,"listed":true,"listing":{"amount":"5000","asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","calls30d":4581,"description":"Health check ping","firstSeenByIndexer":"2026-10-09T23:20:21.000Z","lastCalledAt":"2026-10-09T18:46:08.848Z","lastSeenByIndexer":"2026-10-09T23:20:21.000Z","lastUpdated":"2026-10-09T21:29:46.127Z","method":"GET","network":"eip155:8453","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","payers30d":110,"resource":"https://www.api-xpay.com/x402/ping","serviceName":"X Pay"},"listingsForPayTo":14,"otherListings":[{"calls30d":4539,"description":"Payment receipt with transaction details","resource":"https://www.api-xpay.com/x402/payment"},{"calls30d":4357,"description":"Service status and payment configuration","resource":"https://www.api-xpay.com/x402/status"}]},"index":{"indexedThroughBlock":52401878,"indexedThroughTime":"2026-10-10T00:45:03.000Z","payTosFullyBackfilled":1494,"payTosTracked":1494},"measuredAt":"2026-10-10T00:45:31.943Z","notes":["Measured facts, not advice. Incoming USDC counts every transfer to the payTo, not only x402 settlements; distinct payers can still be one operator with many wallets."],"payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","probe":{"measuredAt":"2026-10-10T00:45:30.978Z","method":"GET","methodNote":"GET without payment","ms":890,"ok":true,"status":402,"tls":{"daysLeft":61,"issuer":"Let's Encrypt","ok":true,"validTo":"2026-12-10T09:14:50.000Z"},"url":"https://www.api-xpay.com/x402/ping","x402":{"accepts":[{"amountAtomic":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","maxTimeoutSeconds":60,"network":"eip155:8453","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8","problems":[],"recognised":"USDC on Base","scheme":"exact","usd":0.005}],"description":"Health check ping","problems":[],"resourceUrl":"https://www.api-xpay.com/x402/ping","source":"PAYMENT-REQUIRED header","valid":true,"version":2}},"query":{"payTo":null,"url":"https://www.api-xpay.com/x402/ping"},"reasons":["Unpaid GET answered 402 with valid x402 v2 requirements (PAYMENT-REQUIRED header): $0.005 USDC on Base to 0x589a2314a2e05f45e40c4823da3ba58d421db3d8 in 890 ms.","Listed in the CDP Bazaar as \"X Pay\" (Bazaar reports 4,581 calls / 110 payers in 30 d).","20,049 USDC payment(s) from 137 distinct payer(s), $2,276.68 total, in the last 7 d."],"reputation":{"firstPaymentSeen":"2026-10-03T00:45:15.000Z","indexed":true,"indexedThroughBlock":52401878,"last24h":{"complete":true,"coveredSince":"2026-10-09T00:45:05.000Z","distinctPayers":17,"medianUsd":0.005,"payments":1930,"topPayerShare":0.29,"totalUsd":409.22096},"last7d":{"complete":true,"coveredSince":"2026-10-03T00:45:05.000Z","distinctPayers":137,"medianUsd":0.005,"payments":20049,"topPayerShare":0.073,"totalUsd":2276.67891},"method":"USDC Transfer events on Base whose recipient is this address, indexed continuously by 402api from eth_getLogs (every incoming USDC transfer counts, not only x402 settlements; amounts in USD at 1 USDC = $1)","payTo":"0x589a2314a2e05f45e40c4823da3ba58d421db3d8"},"verdict":"looks legit"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"discoverable":{"const":true},"method":{"enum":["GET"],"type":"string"},"queryParams":{"properties":{"payTo":{"description":"A seller's Base payTo address (reputation + its most-called Bazaar resource is probed). Give this or url.","pattern":"^0x[0-9a-fA-F]{40}$","type":"string"},"url":{"description":"The x402 resource URL you are about to pay (http/https). Give this or payTo.","maxLength":2048,"pattern":"^https?://","type":"string"}},"type":"object"},"type":{"const":"http","type":"string"}},"required":["type","method"],"type":"object"},"output":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the seller report","properties":{"bazaar":{"description":"listed, listing (description, amount, 30-day calls/payers), other listings for the payTo","type":"object"},"cached":{"type":"boolean"},"index":{"type":"object"},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"payTo":{"type":["string","null"]},"probe":{"description":"status, ms, tls, x402 (version, valid, accepts with recognised asset, usd, payTo)","type":["object","null"]},"query":{"type":"object"},"reasons":{"items":{"type":"string"},"type":"array"},"reputation":{"description":"last24h / last7d: payments, distinctPayers, totalUsd, medianUsd, topPayerShare, complete","type":["object","null"]},"verdict":{"enum":["looks legit","caution","avoid"]}},"required":["verdict","reasons","bazaar","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}}}},"liveness":{"reliability":null},"verified":false,"featured":false},{"id":36445,"slug":"36445","resource":"https://tokencheck.402api.dev/v1/token-check","description":"Call before buying, swapping into or accepting any Base ERC-20, to learn if you can sell it back. $0.02, ~1-3 s, measured on-chain: honeypot test (simulated buy then sell via the deepest pool: sell ok? round-trip loss vs fees), per-pool transfer tax from real recent swap receipts, USD liquidity per pool (Uniswap v2/v3, Aerodrome, Slipstream), sell quotes, and an ok/caution/avoid verdict citing each fact. Errors: 400/503 JSON {error}, not charged.","type":"http","serviceName":"TradingLab Token Check","resourceType":"Market Data","x402Version":2,"accepts":[{"scheme":"exact","network":"eip155:8453","payTo":"0x8C8A81E2acEc6ed62421f1f4E7125B0b84FFffdE","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"20000","amountUsd":0.02,"maxTimeoutSeconds":300}],"outputSchema":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the token report","properties":{"block":{"type":"string"},"cached":{"type":"boolean"},"ethUsd":{"type":["number","null"]},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"pools":{"items":{"description":"venue, pairedWith, feePct, liquidityUsd, transferTax, sellable","type":"object"},"type":"array"},"poolsOmitted":{"type":"integer"},"reasons":{"items":{"type":"string"},"type":"array"},"sellSimulation":{"description":"eth_simulateV1 buy-then-sell on the deepest pool: ok, roundTripLossPct, feesPct, error","type":["object","null"]},"token":{"type":"object"},"verdict":{"enum":["ok","caution","avoid"]}},"required":["token","verdict","reasons","pools","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"},"extensions":{"bazaar":{"info":{"input":{"discoverable":true,"method":"GET","queryParams":{"token":"0x940181a94A35A4569E4529A3CDfB74e38FD98631"},"type":"http"},"output":{"example":{"block":"52398867","ethUsd":2485.34437,"measuredAt":"2026-10-09T23:04:45.143Z","notes":["16 smaller pool(s) omitted.","5 pool(s) with under $1,000 measured liquidity omitted.","Measured facts, not advice. The simulated sell shows a fresh wallet can sell right now; owner-changeable taxes, blacklists or trading switches can still change later."],"pools":[{"address":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","feePct":0.3,"liquidityMethod":"2 × the pool's USDC balance (balanceOf at block 52398867); for concentrated-liquidity pools this counts all reserves, not in-range depth","liquidityUsd":43758468,"pairedWith":{"address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","symbol":"USDC"},"sellable":{"amountIn":"27317.378708653002392855","amountOut":"21791.869827","method":"on-chain quoter/reserves eth_call selling 0.1% of the pool's token balance into this pool (does not detect wallet-level transfer blocks or the tax itself)","ok":true,"outUsd":21791.869827},"source":"tracked by TradingLab","transferTax":{"method":"TradingLab taxcheck job at 2026-10-08T20:25:52.000Z: receipts of the pool's 3 most recent swaps","samples":[],"taxed":false},"venue":"aeroV2"},{"address":"0xbBf71AAD6E1F8D180D3B1D898528654c1d18b2fF","feePct":1,"liquidityMethod":"TradingLab registry estimate (pool added 2026-10-08, value refreshed by the registry job)","liquidityUsd":4664205,"pairedWith":{"address":"0x74ccbe53F77b08632ce0CB91D3A545bF6B8E0979","symbol":"fBOMB"},"sellable":{"amountIn":"2857.2894550549357344","amountOut":"103557.570587184740374855","method":"on-chain quoter/reserves eth_call selling 0.1% of the pool's token balance into this pool (does not detect wallet-level transfer blocks or the tax itself)","ok":true,"outUsd":null},"source":"tracked by TradingLab","transferTax":{"method":"receipts of the pool's 2 most recent swap(s) found by eth_getLogs (Swap event) over the last 500 blocks: does part of a AERO transfer out of / payment into the pool go to the token contract or a burn address?","samples":["0x0bfd8e34e528e56ee56cd480722025c2f149d87152e1a6b2e209cc4b30f97b7d","0x8ae22c6b10bdfd766ae7c09cc0c6ed2a55b001e4835524cd8e3597207f587608"],"taxed":false},"venue":"aeroV2"}],"poolsOmitted":29,"reasons":["Total measured liquidity $66,630,326 across 10 pool(s).","Sell quote succeeded on all 6 pool(s) checked.","No transfer tax seen in recent swaps on 5 pool(s).","Simulated $25 buy then full sell on the aeroV2 USDC pool lost 0.6% (pool fees account for 0.6%): sells work and no meaningful tax."],"sellSimulation":{"bought":"31.120142866883571174","feesPct":0.6,"method":"eth_simulateV1 at block 52398867: a fresh address funded by state override spends 25 USDC buying through aeroV2 router 0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43, then sells every token it received back into the same pool (nothing is signed or broadcast)","ms":503,"ok":true,"pool":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","receivedBack":"24.850225","roundTripLossPct":0.6,"spent":{"amount":"25","symbol":"USDC","usd":25},"stage":"sell","venue":"aeroV2"},"token":{"address":"0x940181a94A35A4569E4529A3CDfB74e38FD98631","chain":"base","decimals":18,"method":"ERC-20 symbol()/name()/decimals()/totalSupply() eth_call at block 52398867","name":"Aerodrome","symbol":"AERO","totalSupply":"1997645621.866174935169948746"},"verdict":"ok"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"discoverable":{"const":true},"method":{"enum":["GET"],"type":"string"},"queryParams":{"properties":{"token":{"description":"ERC-20 token contract address on Base mainnet","pattern":"^0x[0-9a-fA-F]{40}$","type":"string"}},"required":["token"],"type":"object"},"type":{"const":"http","type":"string"}},"required":["type","method"],"type":"object"},"output":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the token report","properties":{"block":{"type":"string"},"cached":{"type":"boolean"},"ethUsd":{"type":["number","null"]},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"pools":{"items":{"description":"venue, pairedWith, feePct, liquidityUsd, transferTax, sellable","type":"object"},"type":"array"},"poolsOmitted":{"type":"integer"},"reasons":{"items":{"type":"string"},"type":"array"},"sellSimulation":{"description":"eth_simulateV1 buy-then-sell on the deepest pool: ok, roundTripLossPct, feesPct, error","type":["object","null"]},"token":{"type":"object"},"verdict":{"enum":["ok","caution","avoid"]}},"required":["token","verdict","reasons","pools","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}}},"tags":["token","base","honeypot","transfer-tax","liquidity","bazaar"],"sourceHost":"tokencheck.402api.dev","lastUpdated":"2026-10-10T10:19:21.821Z","quality":{"calls30d":2,"uniquePayers30d":1,"lastCalledAt":"2026-10-10T10:19:21.163Z"},"metadata":{"serviceName":"TradingLab Token Check","extensions":{"bazaar":{"info":{"input":{"discoverable":true,"method":"GET","queryParams":{"token":"0x940181a94A35A4569E4529A3CDfB74e38FD98631"},"type":"http"},"output":{"example":{"block":"52398867","ethUsd":2485.34437,"measuredAt":"2026-10-09T23:04:45.143Z","notes":["16 smaller pool(s) omitted.","5 pool(s) with under $1,000 measured liquidity omitted.","Measured facts, not advice. The simulated sell shows a fresh wallet can sell right now; owner-changeable taxes, blacklists or trading switches can still change later."],"pools":[{"address":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","feePct":0.3,"liquidityMethod":"2 × the pool's USDC balance (balanceOf at block 52398867); for concentrated-liquidity pools this counts all reserves, not in-range depth","liquidityUsd":43758468,"pairedWith":{"address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","symbol":"USDC"},"sellable":{"amountIn":"27317.378708653002392855","amountOut":"21791.869827","method":"on-chain quoter/reserves eth_call selling 0.1% of the pool's token balance into this pool (does not detect wallet-level transfer blocks or the tax itself)","ok":true,"outUsd":21791.869827},"source":"tracked by TradingLab","transferTax":{"method":"TradingLab taxcheck job at 2026-10-08T20:25:52.000Z: receipts of the pool's 3 most recent swaps","samples":[],"taxed":false},"venue":"aeroV2"},{"address":"0xbBf71AAD6E1F8D180D3B1D898528654c1d18b2fF","feePct":1,"liquidityMethod":"TradingLab registry estimate (pool added 2026-10-08, value refreshed by the registry job)","liquidityUsd":4664205,"pairedWith":{"address":"0x74ccbe53F77b08632ce0CB91D3A545bF6B8E0979","symbol":"fBOMB"},"sellable":{"amountIn":"2857.2894550549357344","amountOut":"103557.570587184740374855","method":"on-chain quoter/reserves eth_call selling 0.1% of the pool's token balance into this pool (does not detect wallet-level transfer blocks or the tax itself)","ok":true,"outUsd":null},"source":"tracked by TradingLab","transferTax":{"method":"receipts of the pool's 2 most recent swap(s) found by eth_getLogs (Swap event) over the last 500 blocks: does part of a AERO transfer out of / payment into the pool go to the token contract or a burn address?","samples":["0x0bfd8e34e528e56ee56cd480722025c2f149d87152e1a6b2e209cc4b30f97b7d","0x8ae22c6b10bdfd766ae7c09cc0c6ed2a55b001e4835524cd8e3597207f587608"],"taxed":false},"venue":"aeroV2"}],"poolsOmitted":29,"reasons":["Total measured liquidity $66,630,326 across 10 pool(s).","Sell quote succeeded on all 6 pool(s) checked.","No transfer tax seen in recent swaps on 5 pool(s).","Simulated $25 buy then full sell on the aeroV2 USDC pool lost 0.6% (pool fees account for 0.6%): sells work and no meaningful tax."],"sellSimulation":{"bought":"31.120142866883571174","feesPct":0.6,"method":"eth_simulateV1 at block 52398867: a fresh address funded by state override spends 25 USDC buying through aeroV2 router 0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43, then sells every token it received back into the same pool (nothing is signed or broadcast)","ms":503,"ok":true,"pool":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","receivedBack":"24.850225","roundTripLossPct":0.6,"spent":{"amount":"25","symbol":"USDC","usd":25},"stage":"sell","venue":"aeroV2"},"token":{"address":"0x940181a94A35A4569E4529A3CDfB74e38FD98631","chain":"base","decimals":18,"method":"ERC-20 symbol()/name()/decimals()/totalSupply() eth_call at block 52398867","name":"Aerodrome","symbol":"AERO","totalSupply":"1997645621.866174935169948746"},"verdict":"ok"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"discoverable":{"const":true},"method":{"enum":["GET"],"type":"string"},"queryParams":{"properties":{"token":{"description":"ERC-20 token contract address on Base mainnet","pattern":"^0x[0-9a-fA-F]{40}$","type":"string"}},"required":["token"],"type":"object"},"type":{"const":"http","type":"string"}},"required":["type","method"],"type":"object"},"output":{"properties":{"example":{"oneOf":[{"description":"HTTP 200: the token report","properties":{"block":{"type":"string"},"cached":{"type":"boolean"},"ethUsd":{"type":["number","null"]},"measuredAt":{"type":"string"},"notes":{"items":{"type":"string"},"type":"array"},"pools":{"items":{"description":"venue, pairedWith, feePct, liquidityUsd, transferTax, sellable","type":"object"},"type":"array"},"poolsOmitted":{"type":"integer"},"reasons":{"items":{"type":"string"},"type":"array"},"sellSimulation":{"description":"eth_simulateV1 buy-then-sell on the deepest pool: ok, roundTripLossPct, feesPct, error","type":["object","null"]},"token":{"type":"object"},"verdict":{"enum":["ok","caution","avoid"]}},"required":["token","verdict","reasons","pools","measuredAt"],"type":"object"},{"description":"Error body. HTTP 400 = bad or missing input; HTTP 503 = check failed or timed out (25 s). The payment is not settled on errors, so the caller is not charged.","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"properties":{"error":{"description":"What went wrong, in plain words","type":"string"}},"required":["error"],"type":"object"}],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}}}},"liveness":{"reliability":null},"verified":false,"featured":false}]}