# GET /trade/precheck: $0.03 per call

Live pre-trade check before buying or selling a token: go/caution/no-go with reasons, from token safety and taxes, liquidity and estimated price impact for your trade size, holder concentration, the chain's swap fee now and the round-trip cost. 8 chains incl. Base, Solana, Ethereum. ?address=...&chain=base&amountUsd=1000&side=buy. Cheaper: /trade/precheck/cached. With AI: /trade/precheck/deep.

- **Price:** $0.03 in USDC, the same on Base, Solana, Polygon, Arbitrum. Failed calls are never charged.
- **Free trial:** yes, 20 free calls a day from Claude, Cursor or any MCP client ([set-up](/mcp/setup)).
- **Answers cached for:** 15 s
- **Data sources:** GoPlus Security (free tier); DexScreener / GeckoTerminal / DefiLlama (free, with fallbacks); Blockscout (free); Public RPC nodes (free)
- **Lane:** Crypto & on-chain ([OpenAPI](/openapi/crypto.json))
- **Live health:** [status page](/status)

## Free sample

See an answer for the demo input first, free (no payment, 10 a minute): [https://aayatai.com/sample/trade-precheck](/sample/trade-precheck). It is a stored real answer when we have one, otherwise an example marked `"kind": "illustrative"`.

```bash
curl "https://aayatai.com/sample/trade-precheck"
```

## 1. See the price (free)

Call it without paying: you get `402 Payment Required` and a `PAYMENT-REQUIRED` header with the exact price and where to pay.

```bash
curl -i "https://aayatai.com/trade/precheck?address=0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed&chain=base&amountUsd=1000&side=buy"
```

## 2. Pay and call (TypeScript)

```bash
npm install @x402/fetch @x402/evm viem
```

```ts
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";

// A wallet used only by your agent, holding a little USDC on Base.
const account = privateKeyToAccount(process.env.WALLET_PRIVATE_KEY as `0x${string}`);
const pay = wrapFetchWithPaymentFromConfig(fetch, {
  schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }],
});

const res = await pay("https://aayatai.com/trade/precheck?address=0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed&chain=base&amountUsd=1000&side=buy");
console.log(await res.json());
```

## 3. Or as an MCP tool

```ts
// MCP server: https://aayatai.com/mcp (Streamable HTTP). With the x402 MCP client (see /start):
const result = await client.callTool("trade-precheck", {"address":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","chain":"base","amountUsd":1000,"side":"buy"});
```

## Inputs

- `address` **(required)** (string): Token contract address (0x...) or Solana mint address.
- `chain` (string; one of `base`, `solana`, `ethereum`, `bsc`, `arbitrum`, `polygon`, `optimism`, `avalanche`; default `base`): Blockchain: base, solana, ethereum, bsc, arbitrum, polygon, optimism, avalanche.
- `amountUsd` (number; default `1000`): Trade size in USD (for price impact and fee share).
- `side` (string; one of `buy`, `sell`; default `buy`): buy or sell.

Bad inputs are rejected with HTTP 400 before any payment is asked for.

## Example answer

```json
{
  "address": "0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed",
  "chain": "base",
  "tier": "live",
  "trade": {
    "side": "buy",
    "amountUsd": 1000
  },
  "decision": "caution",
  "reasons": [
    "Top 10 sellable holders own 58.4% of supply."
  ],
  "token": {
    "name": "Degen",
    "symbol": "DEGEN",
    "priceUsd": 0.00109,
    "change24hPercent": 0.05,
    "marketCapUsd": 39282410
  },
  "safety": {
    "verdict": "low-risk",
    "score": 80,
    "dangers": [],
    "warnings": [
      "mintable"
    ],
    "taxes": {
      "buyPercent": 0,
      "sellPercent": 0
    }
  },
  "liquidity": {
    "known": true,
    "totalUsd": 3750447,
    "mainPoolUsd": 877827,
    "mainPool": {
      "dex": "uniswap-v3",
      "pairAddress": "0x0ca6...",
      "quote": "WETH"
    },
    "lockedPercent": 0,
    "priceImpactPercent": {
      "mainPool": 0.227,
      "routed": 0.053
    },
    "maxTradeFor1PercentImpactUsd": 4434
  },
  "holders": {
    "count": 1225686,
    "top1Percent": 22.57,
    "top10SellablePercent": 58.4,
    "byKind": {
      "exchange": 8.55,
      "fund": 0,
      "pool": 1.66,
      "locked": 3.49,
      "contract": 38.81,
      "wallet": 45.17
    },
    "source": "Blockscout"
  },
  "gas": {
    "swapUsd": 0.0031,
    "swapNative": 0.0000012,
    "symbol": "ETH",
    "congestion": "low",
    "shareOfTradePercent": 0.0003
  },
  "costs": {
    "roundTripPercent": 1.05,
    "poolFeePercentAssumed": 0.3,
    "note": "Round trip = buy tax + sell tax + 2x price impact + 2x pool fee + 2x network fee."
  },
  "market": {
    "name": "Degen",
    "symbol": "DEGEN",
    "priceUsd": 0.00109,
    "priceNative": 4.1e-7,
    "liquidityUsd": 3750447,
    "volume24hUsd": 70227,
    "priceChange": {
      "m5": 0,
      "h1": 0,
      "h6": -1.66,
      "h24": 0.05
    },
    "txns24h": {
      "buys": 813,
      "sells": 666
    },
    "marketCapUsd": 39282410,
    "fdvUsd": 40231418,
    "pairs": 20,
    "topPair": null,
    "oldestPairCreatedAt": "2024-01-08T19:30:45.000Z",
    "links": {
      "websites": [],
      "socials": [],
      "image": null
    },
    "marketSource": "GeckoTerminal",
    "liquidityKnown": true
  },
  "sources": [
    "GoPlus Security",
    "GeckoTerminal",
    "Blockscout",
    "Public RPC node"
  ],
  "disclaimer": "Automated estimates from public data, not financial advice.",
  "checkedAt": "2026-09-28T12:00:00.000Z"
}
```

## Related

- [GET /token/price](/services/token-price) ($0.005): Live price of any token on Base, Solana, Ethereum, BNB, Arbitrum, Polygon, Optimism or Avalanche from DEX data: USD price, total liquidity, 24h volume, buys/sel
- [GET /token/safety](/services/token-safety) ($0.02): Rug-pull and scam check for any token on Base, Solana, Ethereum, BNB, Arbitrum, Polygon, Optimism or Avalanche.
- [GET /token/report/cached](/services/token-report-cached) ($0.05): Full token report, cached tier (answers up to 15 minutes old, half price): safety (honeypot, taxes, owner powers), holders (concentration, exchange/fund/locked 
- [GET /token/report](/services/token-report) ($0.10): Full token report, live: safety (honeypot, taxes, owner powers), holders (concentration, exchange/fund/locked share), liquidity (depth, locks, pools), price act
- [GET /token/report/deep](/services/token-report-deep) ($0.25): Deep token report: everything in /token/report (safety (honeypot, taxes, owner powers), holders (concentration, exchange/fund/locked share), liquidity (depth, l
- [GET /token/new](/services/token-new) ($0.01): New token launches with real liquidity: tokens whose first DEX pool opened in the last hour (up to 24h) with at least $10k liquidity (adjustable), newest first,
- [GET /token/whales](/services/token-whales) ($0.02): Whale and exchange flows for a token on Base, Ethereum, Arbitrum, Optimism or Polygon, from its latest ~250 transfers: large transfers, deposits/withdrawals per
- [GET /wallet](/services/wallet) ($0.01): Wallet profile on Base, Ethereum or Solana: native balance, token holdings with USD values (top 25), total portfolio value, whether it is a contract, ENS name, 

New here? [Getting started in 60 seconds](/start). All services: [Aayat AI](/).