{
  "commands": {
    "research": {
      "description": "Research and analytics commands",
      "subcommands": {
        "portfolio": {
          "subcommands": {
            "defi": {
              "endpoint": "/api/v1/portfolio/defi-holdings",
              "description": "DeFi holdings across protocols",
              "options": {
                "wallet": {
                  "required": true
                }
              }
            }
          },
          "description": "Portfolio analytics"
        },
        "smart-money": {
          "subcommands": {
            "netflow": {
              "endpoint": "/api/v1/smart-money/netflow",
              "description": "Net capital flows (inflows vs outflows)",
              "options": {
                "chain": {
                  "default": "solana"
                }
              }
            },
            "dex-trades": {
              "endpoint": "/api/v1/smart-money/dex-trades",
              "description": "Real-time DEX trading activity",
              "options": {
                "chain": {
                  "default": "solana"
                }
              }
            },
            "perp-trades": {
              "endpoint": "/api/v1/smart-money/perp-trades",
              "description": "Perpetual trading on Hyperliquid"
            },
            "dcas": {
              "endpoint": "/api/v1/smart-money/dcas",
              "description": "DCA strategies on Jupiter"
            },
            "holdings": {
              "endpoint": "/api/v1/smart-money/holdings",
              "description": "Aggregated token balances",
              "options": {
                "chain": {
                  "default": "solana"
                }
              }
            },
            "historical-holdings": {
              "endpoint": "/api/v1/smart-money/historical-holdings",
              "description": "Historical holdings over time",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "days": {
                  "default": 30
                }
              }
            }
          },
          "description": "Smart Money analytics - track sophisticated market participants"
        },
        "profiler": {
          "subcommands": {
            "transactions": {
              "endpoint": "/api/v1/profiler/address/transactions",
              "description": "Transaction history",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "pnl-summary": {
              "endpoint": "/api/v1/profiler/address/pnl-summary",
              "description": "Summarized PnL metrics",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "balance": {
              "endpoint": "/api/v1/profiler/address/current-balance",
              "description": "Current token holdings",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                }
              }
            },
            "counterparties": {
              "endpoint": "/api/v1/profiler/address/counterparties",
              "description": "Top counterparties by volume",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "historical-balances": {
              "endpoint": "/api/v1/profiler/address/historical-balances",
              "description": "Historical balances over time",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "related-wallets": {
              "endpoint": "/api/v1/profiler/address/related-wallets",
              "description": "Find wallets related to an address",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                }
              }
            },
            "pnl": {
              "endpoint": "/api/v1/profiler/address/pnl",
              "description": "PnL and trade performance",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "labels": {
              "endpoint": "/api/v1/profiler/address/labels",
              "description": "Behavioral and entity labels",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                }
              }
            },
            "perp-positions": {
              "endpoint": "/api/v1/profiler/perp-positions",
              "description": "Current perpetual positions",
              "options": {
                "address": {
                  "required": true
                }
              }
            },
            "perp-trades": {
              "endpoint": "/api/v1/profiler/perp-trades",
              "description": "Perpetual trading history",
              "options": {
                "address": {
                  "required": true
                },
                "days": {
                  "default": 30
                }
              }
            },
            "dex-trades": {
              "endpoint": "/api/v1/profiler/dex-trades",
              "description": "DEX trade history for a wallet",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            },
            "search": {
              "endpoint": "/api/v1/search/entity-name",
              "description": "Search for entities by name",
              "options": {
                "query": {
                  "required": true
                }
              }
            },
            "batch": {
              "description": "Batch profile multiple addresses",
              "options": {
                "chain": {
                  "default": "ethereum"
                },
                "include": {
                  "default": "labels,balance"
                },
                "delay": {
                  "default": 1000
                }
              }
            },
            "trace": {
              "description": "Multi-hop counterparty trace (BFS)",
              "options": {
                "address": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "depth": {
                  "default": 2
                },
                "width": {
                  "default": 10
                },
                "days": {
                  "default": 30
                },
                "delay": {
                  "default": 1000
                }
              }
            },
            "compare": {
              "description": "Compare two wallets (shared counterparties, tokens)",
              "options": {
                "addresses": {
                  "required": true
                },
                "chain": {
                  "default": "ethereum"
                },
                "days": {
                  "default": 30
                }
              }
            }
          },
          "description": "Wallet profiling - detailed information about any blockchain address"
        },
        "token": {
          "subcommands": {
            "flows": {
              "endpoint": "/api/v1/tgm/flows",
              "description": "Token flow metrics",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "days": {
                  "default": 30
                },
                "label": {
                  "description": "Holder segment to filter flows by",
                  "enum": [
                    "top_100_holders",
                    "smart_money",
                    "public_figure",
                    "whale",
                    "exchange"
                  ],
                  "default": "top_100_holders"
                }
              }
            },
            "who-bought-sold": {
              "endpoint": "/api/v1/tgm/who-bought-sold",
              "description": "Recent buyers and sellers",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "days": {
                  "default": 30
                },
                "buy-or-sell": {
                  "description": "Filter by buy or sell side",
                  "enum": [
                    "BUY",
                    "SELL"
                  ],
                  "default": "BUY"
                }
              }
            },
            "dex-trades": {
              "endpoint": "/api/v1/tgm/dex-trades",
              "description": "DEX trading activity",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "days": {
                  "default": 30
                }
              }
            },
            "transfers": {
              "endpoint": "/api/v1/tgm/transfers",
              "description": "Token transfer history",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "days": {
                  "default": 30
                }
              }
            },
            "holders": {
              "endpoint": "/api/v1/tgm/holders",
              "description": "Token holder analysis",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "premium-labels": {
                  "description": "Include premium Nansen labels in the response (true=premium, false=free-tier). When omitted, uses API default.",
                  "type": "boolean"
                }
              }
            },
            "pnl": {
              "endpoint": "/api/v1/tgm/pnl-leaderboard",
              "description": "PnL leaderboard",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "days": {
                  "default": 30
                },
                "premium-labels": {
                  "description": "Include premium Nansen labels in the response (true=premium, false=free-tier). When omitted, uses API default.",
                  "type": "boolean"
                }
              }
            },
            "perp-pnl-leaderboard": {
              "endpoint": "/api/v1/tgm/perp-pnl-leaderboard",
              "description": "Perp PnL leaderboard by token",
              "options": {
                "symbol": {
                  "required": true
                },
                "days": {
                  "default": 30
                },
                "premium-labels": {
                  "description": "Include premium Nansen labels in the response (true=premium, false=free-tier). When omitted, uses API default.",
                  "type": "boolean"
                }
              }
            },
            "perp-positions": {
              "endpoint": "/api/v1/tgm/perp-positions",
              "description": "Open perp positions by token symbol",
              "options": {
                "symbol": {
                  "required": true
                }
              }
            },
            "perp-trades": {
              "endpoint": "/api/v1/tgm/perp-trades",
              "description": "Perp trades by token symbol",
              "options": {
                "symbol": {
                  "required": true
                },
                "days": {
                  "default": 30
                }
              }
            },
            "flow-intelligence": {
              "endpoint": "/api/v1/tgm/flow-intelligence",
              "description": "Detailed flow intelligence by label",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "timeframe": {
                  "default": "1d"
                }
              }
            },
            "info": {
              "endpoint": "/api/v1/tgm/token-information",
              "description": "Get detailed information for a specific token",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "timeframe": {
                  "default": "1d"
                }
              }
            },
            "indicators": {
              "endpoint": "/api/v1/tgm/indicators",
              "description": "Risk and reward indicators for a token (Nansen Score)",
              "options": {
                "chain": {
                  "default": "ethereum"
                },
                "token": {
                  "required": true
                }
              }
            },
            "ohlcv": {
              "endpoint": "/api/v1/tgm/token-ohlcv",
              "description": "OHLCV candle data for a token",
              "options": {
                "chain": {
                  "default": "solana"
                },
                "token": {
                  "required": true
                },
                "timeframe": {
                  "default": "1h"
                }
              }
            },
            "jup-dca": {
              "endpoint": "/api/v1/tgm/jup-dca",
              "description": "Jupiter DCA orders for token",
              "options": {
                "token": {
                  "required": true
                }
              }
            },
            "screener": {
              "endpoint": "/api/v1/token-screener",
              "description": "Discover and filter tokens",
              "options": {
                "timeframe": {
                  "default": "24h"
                },
                "chain": {
                  "default": "solana"
                },
                "include-stablecoins": {
                  "description": "Whether to include stablecoins in screener results (default true on API side)",
                  "default": true
                }
              }
            },
            "top-tokens": {
              "endpoint": "/api/v1/nansen-score/top-tokens",
              "description": "Top tokens ranked by Nansen Score (public endpoint, any authenticated API key)",
              "options": {
                "market-cap": {
                  "description": "Filter by market cap group",
                  "enum": ["lowcap", "midcap", "largecap"]
                },
                "limit": {
                  "default": 25
                }
              }
            }
          },
          "description": "Token God Mode - deep analytics for any token"
        },
        "search": {
          "endpoint": "/api/v1/search/general",
          "description": "Search for tokens and entities across Nansen",
          "options": {
            "query": {
              "required": true
            },
            "type": {
              "default": "any"
            },
            "limit": {
              "default": 25
            }
          }
        },
        "perp": {
          "subcommands": {
            "screener": {
              "endpoint": "/api/v1/perp-screener",
              "description": "Screen perpetual futures contracts",
              "options": {
                "days": {
                  "default": 30
                }
              }
            },
            "leaderboard": {
              "endpoint": "/api/v1/perp-leaderboard",
              "description": "Perpetual futures PnL leaderboard",
              "options": {
                "days": {
                  "default": 30
                },
                "premium-labels": {
                  "description": "Include premium Nansen labels in the response (true=premium, false=free-tier). When omitted, uses API default.",
                  "type": "boolean"
                }
              }
            }
          },
          "description": "Perpetual futures analytics"
        },
        "prediction-market": {
          "subcommands": {
            "ohlcv": {
              "endpoint": "/api/v1/prediction-market/ohlcv",
              "description": "Get Prediction Market OHLCV Candles",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "orderbook": {
              "endpoint": "/api/v1/prediction-market/orderbook",
              "description": "Get Prediction Market Orderbook",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "top-holders": {
              "endpoint": "/api/v1/prediction-market/top-holders",
              "description": "Get Prediction Market Top Holders",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "trades-by-market": {
              "endpoint": "/api/v1/prediction-market/trades-by-market",
              "description": "Get Prediction Market Trades by Market",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "market-screener": {
              "endpoint": "/api/v1/prediction-market/market-screener",
              "description": "Get Prediction Market Screener",
              "options": {
                "query": { "default": "" },
                "sort-by": { "description": "Deprecated: use --sort field:dir instead" },
                "tags": {},
                "min-liquidity": {},
                "max-liquidity": {},
                "min-unique-traders-24h": {},
                "max-unique-traders-24h": {},
                "min-volume-24hr": {},
                "max-volume-24hr": {},
                "neg-risk": {},
                "min-open-interest": {},
                "max-open-interest": {},
                "end-date-before": {},
                "end-date-after": {},
                "min-price": {},
                "max-price": {}
              }
            },
            "event-screener": {
              "endpoint": "/api/v1/prediction-market/event-screener",
              "description": "Get Prediction Market Event Screener",
              "options": {
                "query": { "default": "" },
                "sort-by": { "description": "Deprecated: use --sort field:dir instead" },
                "tags": {},
                "min-liquidity": {},
                "max-liquidity": {},
                "min-unique-traders-24h": {},
                "max-unique-traders-24h": {},
                "min-volume-24hr": {},
                "max-volume-24hr": {},
                "neg-risk": {},
                "min-open-interest": {},
                "max-open-interest": {},
                "end-date-before": {},
                "end-date-after": {}
              }
            },
            "pnl-by-market": {
              "endpoint": "/api/v1/prediction-market/pnl-by-market",
              "description": "Get Prediction Market PnL by Market",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "pnl-by-address": {
              "endpoint": "/api/v1/prediction-market/pnl-by-address",
              "description": "Get Prediction Market PnL by Address",
              "options": {
                "address": {
                  "required": true
                }
              }
            },
            "position-detail": {
              "endpoint": "/api/v1/prediction-market/position-detail",
              "description": "Get Prediction Market Position Detail",
              "options": {
                "market-id": {
                  "required": true
                }
              }
            },
            "trades-by-address": {
              "endpoint": "/api/v1/prediction-market/trades-by-address",
              "description": "Get Prediction Market Trades by Address",
              "options": {
                "address": {
                  "required": true
                }
              }
            },
            "categories": {
              "endpoint": "/api/v1/prediction-market/categories",
              "description": "Get Prediction Market Categories"
            },
            "address-summary": {
              "endpoint": "/api/v1/prediction-market/address-summary",
              "description": "Get wallet-level PnL summary for a Polymarket address",
              "options": {
                "address": {
                  "required": true
                }
              }
            }
          },
          "description": "Polymarket prediction market analytics"
        },
        "points": {
          "subcommands": {
            "leaderboard": {
              "description": "Points leaderboard"
            }
          }
        },
        "historical-dex-trades": {
          "endpoint": "/api/v1beta1/tgm/historical-dex-trades",
          "description": "Historical DEX trades for a token at a point in time",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "from-date": { "required": true, "description": "Start of date range (YYYY-MM-DD)" },
            "to-date": { "required": true, "description": "End of date range (YYYY-MM-DD)" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-pnl-leaderboard": {
          "endpoint": "/api/v1beta1/tgm/historical-pnl-leaderboard",
          "description": "Historical PnL leaderboard for a token",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "from-date": { "required": true, "description": "Start of date range (YYYY-MM-DD)" },
            "to-date": { "required": true, "description": "End of date range (YYYY-MM-DD)" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-token-flow-summary": {
          "endpoint": "/api/v1beta1/tgm/historical-token-flow-summary",
          "description": "Historical token flow summary (no pagination)",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "from-date": { "required": true, "description": "Start of date range (YYYY-MM-DD)" },
            "to-date": { "required": true, "description": "End of date range (YYYY-MM-DD)" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-token-quant-scores": {
          "endpoint": "/api/v1beta1/tgm/historical-token-quant-scores",
          "description": "Historical token quantitative scores at a snapshot date",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "as-of-date": { "required": true, "description": "Snapshot date (YYYY-MM-DD)" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-top-holders": {
          "endpoint": "/api/v1beta1/tgm/historical-top-holders",
          "description": "Historical top holders of a token at a snapshot date",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "as-of-date": { "required": true, "description": "Snapshot date (YYYY-MM-DD)" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-who-bought-sold": {
          "endpoint": "/api/v1beta1/tgm/historical-who-bought-sold",
          "description": "Historical buyers/sellers of a token",
          "options": {
            "token-address": { "required": true, "description": "Token address" },
            "from-date": { "required": true, "description": "Start of date range (YYYY-MM-DD)" },
            "to-date": { "required": true, "description": "End of date range (YYYY-MM-DD)" },
            "buy-or-sell": { "default": "BUY", "description": "BUY or SELL" },
            "chain": { "default": "solana", "description": "Chain" }
          }
        },
        "historical-smart-money-balances": {
          "endpoint": "/api/v1beta1/smart-money/historical-token-balances",
          "description": "Historical smart money token balances at a snapshot date (no order_by)",
          "options": {
            "as-of-date": { "required": true, "description": "Snapshot date (YYYY-MM-DD)" },
            "chains": { "default": "solana", "description": "Comma-separated chains" }
          }
        },
        "historical-token-screener": {
          "endpoint": "/api/v1beta1/token-screener/historical",
          "description": "Historical token screener over a trailing window",
          "options": {
            "timeframe-days": { "required": true, "type": "number", "description": "Trailing window size in days" },
            "to-date": { "required": true, "description": "End date for the window (YYYY-MM-DD)" },
            "chains": { "default": "solana", "description": "Comma-separated chains" }
          }
        },
        "historical-wallet-balances": {
          "endpoint": "/api/v1beta1/profiler/address/historical-token-balances",
          "description": "Historical token balances for a wallet at a snapshot date",
          "options": {
            "address": { "required": true, "description": "Wallet address" },
            "as-of-date": { "required": true, "description": "Snapshot date (YYYY-MM-DD)" },
            "chain": { "default": "ethereum", "description": "Chain" }
          }
        },
        "historical-tx-lookup": {
          "endpoint": "/api/v1beta1/profiler/historical-transaction-lookup",
          "description": "Lookup a historical transaction by hash",
          "options": {
            "transaction-hash": { "required": true, "description": "Transaction hash (0x-prefixed, 66 chars)" },
            "as-of-date": { "required": true, "description": "Reference date for label and pricing resolution (YYYY-MM-DD)" },
            "block-timestamp": { "description": "Block timestamp (YYYY-MM-DD HH:MM:SS) — skips slow hash-resolution step if provided" },
            "chain": { "default": "ethereum", "description": "Chain (ethereum, bnb, base)" }
          }
        },
        "historical-wallet-transactions": {
          "endpoint": "/api/v1beta1/profiler/address/historical-transactions",
          "description": "Historical transactions for a wallet at a snapshot date",
          "options": {
            "address": { "required": true, "description": "Wallet address" },
            "as-of-date": { "required": true, "description": "Snapshot date (YYYY-MM-DD)" },
            "chain": { "default": "ethereum", "description": "Chain" }
          }
        }
      }
    },
    "alerts": {
      "description": "Smart alert management \u2014 create, update, toggle, delete alerts",
      "subcommands": {
        "list": {
          "description": "List all alerts",
          "returns": [
            "id",
            "name",
            "type",
            "timeWindow",
            "isEnabled",
            "channels",
            "data",
            "description"
          ]
        },
        "create": {
          "description": "Create a new alert",
          "options": {
            "name": {
              "type": "string",
              "required": true,
              "description": "Alert name"
            },
            "type": {
              "type": "string",
              "required": true,
              "description": "Alert type (e.g. sm-token-flows, common-token-transfer)"
            },
            "chains": {
              "type": "string",
              "description": "Comma-separated chains (e.g. ethereum,solana). Merged into data."
            },
            "telegram": {
              "type": "string",
              "description": "Telegram chat ID for notifications"
            },
            "slack": {
              "type": "string",
              "description": "Slack webhook URL for notifications"
            },
            "discord": {
              "type": "string",
              "description": "Discord webhook URL for notifications"
            },
            "webhook": {
              "type": "string",
              "description": "HTTP/HTTPS endpoint URL to POST alert payloads to"
            },
            "webhook-secret": {
              "type": "string",
              "description": "Signing secret for webhook payload verification (optional, webhook only)"
            },
            "data": {
              "type": "string",
              "description": "Alert config JSON. --chains is merged on top."
            },
            "description": {
              "type": "string",
              "description": "Optional description"
            },
            "disabled": {
              "type": "boolean",
              "description": "Create alert in disabled state"
            }
          }
        },
        "update": {
          "description": "Update an existing alert. Usage: nansen alerts update <id> [options]",
          "options": {
            "name": {
              "type": "string",
              "description": "Alert name"
            },
            "type": {
              "type": "string",
              "description": "Alert type"
            },
            "chains": {
              "type": "string",
              "description": "Comma-separated chains. Merged into data."
            },
            "telegram": {
              "type": "string",
              "description": "Telegram chat ID"
            },
            "slack": {
              "type": "string",
              "description": "Slack webhook URL"
            },
            "discord": {
              "type": "string",
              "description": "Discord webhook URL"
            },
            "webhook": {
              "type": "string",
              "description": "HTTP/HTTPS endpoint URL to POST alert payloads to"
            },
            "webhook-secret": {
              "type": "string",
              "description": "Signing secret for webhook payload verification (optional, webhook only)"
            },
            "data": {
              "type": "string",
              "description": "Alert config JSON. --chains merged on top."
            },
            "description": {
              "type": "string",
              "description": "Description"
            },
            "enabled": {
              "type": "boolean",
              "description": "Enable alert"
            },
            "disabled": {
              "type": "boolean",
              "description": "Disable alert"
            }
          }
        },
        "toggle": {
          "description": "Enable or disable an alert. Usage: nansen alerts toggle <id> --enabled|--disabled",
          "options": {
            "enabled": {
              "type": "boolean",
              "description": "Enable alert"
            },
            "disabled": {
              "type": "boolean",
              "description": "Disable alert"
            }
          }
        },
        "delete": {
          "description": "Delete an alert. Usage: nansen alerts delete <id>",
          "options": {}
        }
      }
    },
    "trade": {
      "description": "DEX trading commands",
      "subcommands": {
        "quote": {
          "description": "Get a DEX swap quote (same-chain or cross-chain)",
          "options": {
            "chain": {
              "type": "string",
              "default": "base",
              "description": "Source blockchain (solana or base)"
            },
            "to-chain": {
              "type": "string",
              "description": "Destination blockchain for cross-chain swap (solana or base). Omit for same-chain. At least one side must be USDC or a native token (ETH, SOL). Non-native to non-native is not supported — swap to USDC first, then bridge. Bridge providers (Li.Fi or Relay) are selected automatically based on best price. Sub-dollar swaps are supported via Relay."
            },
            "from": {
              "type": "string",
              "required": true,
              "description": "Token to sell (address or symbol)"
            },
            "to": {
              "type": "string",
              "required": true,
              "description": "Token to buy (address or symbol, resolved against destination chain for cross-chain)"
            },
            "amount": {
              "type": "string",
              "required": true,
              "description": "Amount to swap (base units by default, or token units with --amount-unit token, USD with --amount-unit usd, or percentage of balance with --amount-unit percent)"
            },
            "amount-unit": {
              "type": "string",
              "description": "\"token\" to specify amount in token units (e.g. 0.5 SOL), \"usd\" to specify amount in USD (e.g. 50), \"percent\" to sell a percentage of your balance (e.g. 100 for all), or \"base\" for base units (default). The CLI resolves the current token price, decimals, and balance locally; the API always receives base units."
            },
            "wallet": {
              "type": "string",
              "description": "Wallet name (or \"walletconnect\"/\"wc\" for WalletConnect, EVM only). A configured wallet is required \u2014 run `nansen wallet create` if you haven't set one up yet."
            },
            "to-wallet": {
              "type": "string",
              "description": "Destination wallet address for cross-chain swaps. Auto-derived from wallet if omitted."
            },
            "aggregator": {
              "type": "string",
              "description": "Force a specific aggregator: lifi, relay, jupiter, or okx. Filters the returned quote list client-side; errors if no quote from that aggregator was returned."
            }
          },
          "prerequisites": [
            "A local wallet must be configured. Run: nansen wallet create"
          ]
        },
        "execute": {
          "description": "Sign and broadcast a quoted trade",
          "options": {
            "chain": {
              "type": "string",
              "default": "base",
              "description": "Blockchain (solana or base)"
            },
            "wallet": {
              "type": "string",
              "description": "Wallet name, or \"walletconnect\"/\"wc\" for WalletConnect (EVM only)"
            },
            "gasless": {
              "type": "boolean",
              "description": "Relay-only: have Relay's solver pay gas + broadcast (user signs only). Requires the selected quote's aggregator to be \"relay\". Not supported via WalletConnect."
            }
          }
        },
        "bridge-status": {
          "description": "Check cross-chain bridge transaction status. Aggregator (Li.Fi or Relay) is auto-detected from a local tx record saved at execute time (kept 30 days); pass --aggregator to override when polling from a different machine.",
          "options": {
            "tx-hash": {
              "type": "string",
              "required": true,
              "description": "Source chain transaction hash"
            },
            "from-chain": {
              "type": "string",
              "required": true,
              "description": "Source chain (solana or base)"
            },
            "to-chain": {
              "type": "string",
              "required": true,
              "description": "Destination chain (solana or base)"
            },
            "aggregator": {
              "type": "string",
              "description": "lifi or relay. Overrides auto-detection — use when polling from a different machine or after the 30-day local record TTL has expired."
            }
          }
        },
        "limit-order": {
          "description": "Limit order management (Solana only)",
          "subcommands": {
            "create": {
              "description": "Place a new limit order",
              "options": {
                "from": {
                  "type": "string",
                  "required": true,
                  "description": "Token to sell (address or symbol)"
                },
                "to": {
                  "type": "string",
                  "required": true,
                  "description": "Token to buy (address or symbol)"
                },
                "amount": {
                  "type": "string",
                  "required": true,
                  "description": "Amount in token units (e.g. 1.5 = 1.5 SOL)"
                },
                "trigger-price": {
                  "type": "number",
                  "required": true,
                  "description": "Trigger price in USD"
                },
                "trigger-condition": {
                  "type": "string",
                  "required": true,
                  "description": "Trigger when price is 'above' or 'below' target"
                },
                "trigger-mint": {
                  "type": "string",
                  "required": true,
                  "description": "Token whose price triggers the order (e.g. SOL)"
                },
                "slippage-bps": {
                  "type": "number",
                  "description": "Slippage tolerance in basis points (e.g. 50 = 0.5%)"
                },
                "expires": {
                  "type": "string",
                  "default": "30d",
                  "description": "Expiry duration (e.g. 24h, 7d, 30d) or epoch ms"
                },
                "wallet": {
                  "type": "string",
                  "description": "Wallet name (or \"walletconnect\"/\"wc\")"
                }
              },
              "chains": ["solana"],
              "prerequisites": [
                "A Solana wallet must be configured. Run: nansen wallet create"
              ]
            },
            "list": {
              "description": "List your limit orders",
              "options": {
                "state": {
                  "type": "string",
                  "description": "Filter by state (active, past)"
                },
                "mint": {
                  "type": "string",
                  "description": "Filter by token mint address"
                },
                "limit": {
                  "type": "number",
                  "default": 20,
                  "description": "Max results per page"
                },
                "offset": {
                  "type": "number",
                  "default": 0,
                  "description": "Pagination offset"
                },
                "sort": {
                  "type": "string",
                  "description": "Sort field"
                },
                "dir": {
                  "type": "string",
                  "default": "desc",
                  "description": "Sort direction (asc or desc)"
                },
                "wallet": {
                  "type": "string",
                  "description": "Wallet name (or \"walletconnect\"/\"wc\")"
                }
              },
              "chains": ["solana"]
            },
            "cancel": {
              "description": "Cancel an open limit order",
              "options": {
                "order": {
                  "type": "string",
                  "required": true,
                  "description": "Order ID to cancel"
                },
                "wallet": {
                  "type": "string",
                  "description": "Wallet name (or \"walletconnect\"/\"wc\")"
                }
              },
              "chains": ["solana"]
            },
            "update": {
              "description": "Update trigger price or slippage on an existing order",
              "options": {
                "order": {
                  "type": "string",
                  "required": true,
                  "description": "Order ID to update"
                },
                "trigger-price": {
                  "type": "number",
                  "description": "New trigger price in USD"
                },
                "slippage-bps": {
                  "type": "number",
                  "description": "New slippage in basis points (0-10000)"
                },
                "wallet": {
                  "type": "string",
                  "description": "Wallet name (or \"walletconnect\"/\"wc\")"
                }
              },
              "chains": ["solana"]
            }
          }
        }
      }
    },
    "wallet": {
      "description": "Wallet management",
      "subcommands": {
        "create": {
          "description": "Create a new wallet"
        },
        "list": {
          "description": "List all wallets"
        },
        "show": {
          "description": "Show wallet details",
          "options": {
            "name": {
              "description": "Wallet name"
            }
          }
        },
        "send": {
          "description": "Send tokens or native currency",
          "options": {
            "to": {
              "required": true
            },
            "chain": {
              "required": true
            },
            "amount": {
              "required": true
            }
          }
        },
        "export": {
          "description": "Export private keys"
        },
        "delete": {
          "description": "Delete a wallet"
        },
        "default": {
          "description": "Set default wallet"
        }
      }
    },
    "account": {
      "description": "Show API key status, plan, and remaining credits. Does not consume credits."
    },
    "web": {
      "description": "Web search and fetch commands",
      "subcommands": {
        "search": {
          "description": "Search the web for one or more queries in parallel",
          "options": {
            "query": {
              "description": "Search query (can be repeated for multiple queries)"
            },
            "num-results": {
              "description": "Number of results per query (1-20, default 10)",
              "default": 10
            }
          },
          "examples": [
            "nansen web search \"bitcoin price\"",
            "nansen web search \"solana news\" --num-results 5",
            "nansen web search --query \"btc\" --query \"eth\"",
            "nansen web search \"btc\" --query \"eth\"  # positional + flag merged"
          ]
        },
        "fetch": {
          "description": "Fetch and analyze content from one or more URLs using AI",
          "options": {
            "url": {
              "description": "URL to fetch (can be repeated for multiple URLs)"
            },
            "question": {
              "description": "Question to answer about the URL content",
              "required": true
            }
          },
          "examples": [
            "nansen web fetch https://nansen.ai --question \"What does Nansen do?\"",
            "nansen web fetch --url https://a.com --url https://b.com --question \"Compare these\"",
            "nansen web fetch https://a.com --url https://b.com --question \"Diff?\"  # positional + flag merged"
          ]
        }
      }
    },
    "agent": {
      "description": "Nansen AI research agent \u2014 ask questions about wallets, tokens, and on-chain activity",
      "options": {
        "expert": {
          "type": "boolean",
          "description": "Use expert mode (deeper analysis, slower). Default: fast mode."
        },
        "conversation-id": {
          "type": "string",
          "format": "uuid",
          "description": "Continue a previous conversation by passing its UUID v4 ID"
        },
        "json": {
          "type": "boolean",
          "description": "Output raw JSON (conversation_id, mode, text, tool_calls) instead of formatted text"
        }
      },
      "examples": [
        "nansen agent \"What are the top smart money inflows on Ethereum today?\"",
        "nansen agent \"Analyze wallet 0xd8dA...6045\" --expert",
        "nansen agent \"Tell me more\" --conversation-id <id>"
      ],
      "returns": [
        "conversation_id",
        "mode",
        "text",
        "tool_calls"
      ]
    }
  },
  "globalOptions": {
    "pretty": {
      "type": "boolean",
      "description": "Format JSON output for readability"
    },
    "table": {
      "type": "boolean",
      "description": "Format output as human-readable table"
    },
    "fields": {
      "type": "string",
      "description": "Comma-separated list of fields to include in output"
    },
    "no-retry": {
      "type": "boolean",
      "description": "Disable automatic retry on rate limits/errors"
    },
    "retries": {
      "type": "number",
      "default": 3,
      "description": "Max retry attempts"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "csv"
      ],
      "description": "Output format (default: json)"
    },
    "x402-payment-signature": {
      "type": "string",
      "description": "Pre-signed x402 payment signature header"
    }
  },
  "chains": [
    "ethereum",
    "solana",
    "base",
    "bnb",
    "arbitrum",
    "polygon",
    "optimism",
    "avalanche",
    "linea",
    "scroll",
    "mantle",
    "ronin",
    "sei",
    "plasma",
    "sonic",
    "monad",
    "hyperevm",
    "iotaevm"
  ],
  "smartMoneyLabels": [
    "Fund",
    "Smart Trader",
    "30D Smart Trader",
    "90D Smart Trader",
    "180D Smart Trader",
    "Smart HL Perps Trader"
  ]
}
