# Base Launch Guard – Exit Liquidity Check

> Base Launch Guard – Exit Liquidity Check is a paid API for AI agents from guard.facts402.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-11-01).

Simulates selling a Base token position and returns net USD received, price impact, sell tax, max safe exit size, and an EXIT_TRAP flag for honeypot/illiquid tokens.

## Facts

- Endpoint: POST https://guard.facts402.com/v1/guard/exit?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/base-launch-guard-exit-liquidity-check-ea6b22cc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ktHokngui-Z53USo1fQs6

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability base-launch-guard-exit-liquidity-check-ea6b22cc -d '<json body>'
```

Example prompt: Before I sell, simulate exiting my $2,500 position in the Base token at 0x4ed4e862860bed51a9570b96d89af5e1b0efefed and tell me the price impact, net received, sell tax, and whether it's flagged as an exit trap.

## When to prefer this

Use this endpoint when you need a fast, cheap ($0.02) on-chain simulation of selling a specific Base token position before executing a trade, especially for memecoins and new launches where EXIT_TRAP risk is high. Prefer this over generic DEX aggregator quotes when you specifically need sell tax measurement, the EXIT_TRAP flag, and the max-safe-exit-size calculation all in one call. Best for polling in trading agents that monitor open positions.

## Known failure modes

- Invalid token address (not a valid Base ERC-20 contract) — returns error detail
- Trade simulation reverted — trade_simulation_reverted flag set to true, net values may be null
- Token has no liquidity pool on Base — pool data absent, cannot simulate
- Position size too large or too small (outside 1–10,000,000 USD range) — validation error
- Network or RPC failure — 500 error with no simulation data
- Both position_usd and amount_tokens provided — ambiguous input may cause error

## How this service works

Use when an agent holds a Base token or memecoin and needs to know if it can still sell: simulates selling your size on the deepest pool and returns net received, price impact/slippage, the largest size that exits under 3% impact, measured sell tax and an EXIT_TRAP flag (>15% impact). Priced for repeated checks. $0.02 USDC on Base; invalid input is a 400 before payment; charged only on 2xx.

## Output

Returns a JSON object with: net USD received after simulating the sale, price impact percentage, sell tax percentage, the largest USD position that can exit under 3% impact, whether the trade simulation reverted, the deepest pool address and reserve size in USD, an EXIT_TRAP boolean flag (true if impact > 15%), and the block number the simulation was pinned to.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "token": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$",
   "description": "Base mainnet (chain id 8453) ERC-20 token contract address"
  },
  "position_usd": {
   "type": "number",
   "maximum": 10000000,
   "minimum": 1,
   "description": "Position size in USD for the exit-liquidity simulation (default 500)"
  },
  "amount_tokens": {
   "type": "string",
   "pattern": "^[1-9][0-9]{0,77}$",
   "description": "Token amount in RAW units (the token's smallest unit, i.e. amount * 10^decimals) as a decimal string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "exit": {
   "data": {
    "pool": {
     "fee": 3000,
     "kind": "uniswap_v3",
     "stable": null,
     "address": "0xc9034c3e7f58003e6ae0c8438e7c8f4598d5acaa",
     "quote_token": "0x4200000000000000000000000000000000000006",
     "quote_reserve_usd": 119650.42
    },
    "untaxed": false,
    "exit_trap": false,
    "sims_used": 4,
    "position_usd": 2500,
    "amount_tokens": "574780000000000000000000",
    "net_received_usd": 2434.92,
    "price_impact_pct": 2.31,
    "net_received_quote": "216250000000000000",
    "trade_simulation_reverted": false,
    "max_position_usd_for_3pct_impact": 3620
   },
   "detail": null,
   "reason": null,
   "status": "ok"
  },
  "block": 53330000,
  "chain": "base",
  "token": "0x4ed4e862860bed51a9570b96d89af5e1b0efefed",
  "chain_id": 8453,
  "disclaimer": "Automated on-chain facts and rules-based flags. Not investment advice.",
  "simulation": {
   "data": {
    "pool": {
     "fee": 3000,
     "kind": "uniswap_v3",
     "stable": null,
     "address": "0xc9034c3e7f58003e6ae0c8438e7c8f4598d5acaa",
     "quote_token": "0x4200000000000000000000000000000000000006",
     "quote_reserve_usd": 119650.42
    },
    "buy_ok": true,
    "gas_buy": 118402,
    "sell_ok": true,
    "gas_sell": 126930,
    "honeypot": false,
    "approve_ok": true,
    "buy_tax_pct": 0,
    "transfer_ok": true,
    "gas_transfer": 34811,
    "sell_tax_pct": 0,
    "content_origin": "third_party_untrusted",
    "transfer_tax_pct": 0,
    "revert_reason_untrusted": null
   },
   "detail": null,
   "reason": null,
   "status": "ok"
  },
  "data_sources": [
   "Base mainnet JSON-RPC (block-pinned eth_call / eth_getCode / eth_getStorageAt, state-override trade simulation)"
  ],
  "generated_at": "2026-10-31T12:00:00+00:00",
  "position_usd": 2500,
  "amount_tokens": null
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/base-launch-guard-exit-liquidity-check-ea6b22cc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from guard.facts402.com](https://www.zero.xyz/host/guard.facts402.com/llms.txt)
