{"uid":"cap_VNQq2MOmt6e7dnetKOSln","slug":"tradinglab-token-check-d02ce363","name":"TradingLab Token Check","description":"Pay-per-call checks on Base, $0.02 USDC each via x402: a token safety check and an x402 seller check.","url":"https://tokencheck.402api.dev/v1/token-check?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["token"],"properties":{"token":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"ERC-20 token contract address on Base mainnet"}}},"discoverable":{"const":true}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","oneOf":[{"type":"object","required":["token","verdict","reasons","pools","measuredAt"],"properties":{"block":{"type":"string"},"notes":{"type":"array","items":{"type":"string"}},"pools":{"type":"array","items":{"type":"object","description":"venue, pairedWith, feePct, liquidityUsd, transferTax, sellable"}},"token":{"type":"object"},"cached":{"type":"boolean"},"ethUsd":{"type":["number","null"]},"reasons":{"type":"array","items":{"type":"string"}},"verdict":{"enum":["ok","caution","avoid"]},"measuredAt":{"type":"string"},"poolsOmitted":{"type":"integer"},"sellSimulation":{"type":["object","null"],"description":"eth_simulateV1 buy-then-sell on the deepest pool: ok, roundTripLossPct, feesPct, error"}},"description":"HTTP 200: the token report"},{"type":"object","example":{"error":"query parameter `token` must be a 0x-prefixed 40-hex-digit Base token address"},"required":["error"],"properties":{"error":{"type":"string","description":"What went wrong, in plain words"}},"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."}]}}}}},"responseSchema":{"type":"json","example":{"block":"52398867","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":[{"venue":"aeroV2","feePct":0.3,"source":"tracked by TradingLab","address":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","sellable":{"ok":true,"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)","outUsd":21791.869827,"amountIn":"27317.378708653002392855","amountOut":"21791.869827"},"pairedWith":{"symbol":"USDC","address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"transferTax":{"taxed":false,"method":"TradingLab taxcheck job at 2026-10-08T20:25:52.000Z: receipts of the pool's 3 most recent swaps","samples":[]},"liquidityUsd":43758468,"liquidityMethod":"2 × the pool's USDC balance (balanceOf at block 52398867); for concentrated-liquidity pools this counts all reserves, not in-range depth"},{"venue":"aeroV2","feePct":1,"source":"tracked by TradingLab","address":"0xbBf71AAD6E1F8D180D3B1D898528654c1d18b2fF","sellable":{"ok":true,"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)","outUsd":null,"amountIn":"2857.2894550549357344","amountOut":"103557.570587184740374855"},"pairedWith":{"symbol":"fBOMB","address":"0x74ccbe53F77b08632ce0CB91D3A545bF6B8E0979"},"transferTax":{"taxed":false,"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"]},"liquidityUsd":4664205,"liquidityMethod":"TradingLab registry estimate (pool added 2026-10-08, value refreshed by the registry job)"}],"token":{"name":"Aerodrome","chain":"base","method":"ERC-20 symbol()/name()/decimals()/totalSupply() eth_call at block 52398867","symbol":"AERO","address":"0x940181a94A35A4569E4529A3CDfB74e38FD98631","decimals":18,"totalSupply":"1997645621.866174935169948746"},"ethUsd":2485.34437,"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."],"verdict":"ok","measuredAt":"2026-10-09T23:04:45.143Z","poolsOmitted":29,"sellSimulation":{"ms":503,"ok":true,"pool":"0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d","spent":{"usd":25,"amount":"25","symbol":"USDC"},"stage":"sell","venue":"aeroV2","bought":"31.120142866883571174","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)","feesPct":0.6,"receivedBack":"24.850225","roundTripLossPct":0.6}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_dQCNpJb0z9q37xjWbfYo7","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Checks an ERC-20 token contract on Base mainnet for safety signals including liquidity, sell simulation, transfer taxes, and a buy/sell verdict for $0.02 USDC per call via x402.","exampleAgentPrompt":"Run a token safety check on the Base token at address 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 — I want to know if it's safe to buy, whether I can sell it, and if there are any transfer taxes or red flags.","exampleUseCases":[{"title":"Pre-trade rug pull screening","prompt":"Before I swap into this Base token at 0x6cDcb1C4A4D1C3C6d054b27AC5B77e89eAFb971d, can you check if it's safe? I want to know the verdict, liquidity, and whether a fresh wallet can actually sell it."},{"title":"Transfer tax detection before investing","prompt":"I'm about to buy a meme token on Base at 0x74ccbe53F77b08632ce0CB91D3A545bF6B8E0979 — can you check if it has any hidden transfer taxes or honeypot mechanics I should know about?"},{"title":"Automated DeFi bot safety gate","prompt":"My trading bot is about to enter a position on a Base token — run a safety check on 0xbBf71AAD6E1F8D180D3B1D898528654c1d18b2fF and only proceed if the verdict comes back as 'ok' with at least $10,000 in liquidity."}],"resultDescription":"Returns a JSON report with a verdict ('ok', 'caution', or 'avoid'), array of reason strings explaining the verdict, pool-level details (venue, paired token, liquidity in USD, transfer tax status, sellability), an optional sell simulation showing round-trip loss percentage and fees on the deepest pool, block number, and measurement timestamp. Errors return a plain-English error string; payments are not settled on error responses.","failureModes":["HTTP 400: token query parameter missing or not a valid 0x-prefixed 40-hex-digit Base address","HTTP 503: check failed or timed out (25-second timeout); payment is not charged on errors","Token exists but has no tracked pools, resulting in limited verdict data","Sell simulation may not detect wallet-level transfer blocks or owner-changeable tax switches set after measurement","Cached results may not reflect very recent on-chain changes"],"whenToPreferThis":"Use this endpoint when you need a quick, affordable ($0.02) on-chain safety assessment of a specific Base mainnet ERC-20 token before trading, including sell simulation and transfer tax detection. Prefer this over manual on-chain analysis when you need a structured verdict with liquidity metrics in a single call. Best for DeFi bots, trading agents, or pre-swap safety gates operating on Base.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-11T12:37:54.953Z","isFirstParty":false,"canonicalSlug":"tradinglab-token-check-d02ce363"}