{
 "api_version": "2.0.0",
 "lang": "en",
 "core_fields": "Core fields: volume_24h_usd and price_change_24h_pct (except stablecoins: for those, momentum is null and only identity/price is required). volume comes from DexScreener/GeckoTerminal h24 when they answer, else Swap events in the largest pools. Swap window starts at ~20 min (600 blocks); if fewer than 30 valued swaps, it expands to ~2 h then ~6 h via parallel getLogs chunks, as long as the total answer stays under ~2 s. The window is always stated. price_change: aggregator h24, else slot0/getReserves now vs a historical block (24 h → 6 h → 2 h). Temporary holes → 503 + Retry-After, not charged. social is NOT a core field.",
 "address": "0x940181a94a35a4569e4529a3cdfb74e38fd98631",
 "chain": "base",
 "token": {
  "name": "Aerodrome",
  "symbol": "AERO",
  "price_usd": 0.77705,
  "is_stablecoin": false
 },
 "liquidity": {
  "pooled_all_pools_usd": 59655930.72,
  "top_pool_liquidity_usd": 35086280.46,
  "top_pool": {
   "address": "0x6cdcb1c4a4d1c3c6d054b27ac5b77e89eafb971d",
   "name": "AERO / USDC"
  },
  "pools_counted": 20,
  "source": "geckoterminal",
  "note": "top 20 pools only"
 },
 "momentum": 75,
 "direction": "down",
 "direction_basis": "price_change_24h_pct over 24h in quote-token units (flat if |change| < 1%)",
 "momentum_explanation": "momentum 75 = 0.6 × volume (96: $5.62M 24 h) + 0.4 × price (44: price -2.4% over 24h); direction down: high activity while the price falls, so a high score is not a buy signal",
 "confidence": "high",
 "confidence_en": "high",
 "confidence_rule": "confidence: high = DexScreener/Gecko volume used, OR ≥100 valued swaps in ≤20 min, OR ≥50 in ≤2 h; medium = ≥30 swaps in ≤6 h, OR ≥10 in ≤2 h; low = otherwise.",
 "components": {
  "volume_24h_usd": 5618890.09,
  "volume_24h_note": "estimated from 396 swap event(s) in 11 pool(s) over the last ~20 min (600 blocks), extrapolated linearly to 24 h — window: 20 min",
  "volume_window_min": 20,
  "swaps_in_window": 396,
  "volume_vs_liquidity": 0.09,
  "pooled_all_pools_usd": 59655930.72,
  "liquidity_source": "geckoterminal",
  "liquidity_usd": 59655930.72,
  "price_change_24h_pct": -2.4,
  "price_change_window": "24h",
  "price_change_note": "Aerodrome V2: USDC (0x6cdcb1c4a4d1c3c6d054b27ac5b77e89eafb971d): price now 0.77705 vs 0.796137 quote units 24h ago (block −43200)",
  "pools_used": 11,
  "social": {
   "level": "no_data",
   "level_en": "no_data",
   "measured": false,
   "legacy_level": "ukendt",
   "sentence": "No social/news data source is connected; nothing is inferred.",
   "source": null
  }
 },
 "signals_measured_list": [
  "volume_24h_usd",
  "volume_vs_liquidity",
  "price_change_24h_pct"
 ],
 "method": "momentum 0-100 = 0.6 × volume component + 0.4 × price component (social never scored). Volume: log-scale of 24 h USD volume (0 at $0, ~50 at $100k, 100 at $10M+) plus ±15 from volume/liquidity. Price: 50 = flat; ±2.5 pts per 1% over the window, scaled by sqrt(hours/24). Adaptive swap window: start 20 min; if <30 valued swaps expand to 2 h, then 6 h (parallel eth_getLogs chunks). confidence: high = aggregator volume used, OR ≥100 swaps in ≤20 min, OR ≥50 swaps in ≤2 h; medium = ≥30 swaps in ≤6 h, OR ≥10 swaps in ≤2 h; low = otherwise (incl. 0 swaps or only a long thin window). Stablecoins (known Base list or mid-price within ±2% of $1): momentum=null with note — score is not meaningful. Higher score = stronger upward momentum. Not a prediction.",
 "liquidity_method": "liquidity.pooled_all_pools_usd = USD liquidity summed over all indexed Base pools of the token; liquidity.top_pool_liquidity_usd = the single deepest pool. Source order (same in every endpoint, one shared function): live DexScreener (all Base pairs, 2 endpoints raced) > live GeckoTerminal (top 20 pools) > the last DexScreener/GeckoTerminal value measured by any of our token APIs in the last 15 min (shared cache, measured_age_s) > honeypot.is GetPairs (often much lower: counts fewer pools; fallback_reason says why). The source is always named.",
 "sources": [
  "https://api.honeypot.is/v1/GetPairs?address=0x940181a94a35a4569e4529a3cdfb74e38fd98631&chainID=8453",
  "https://api.honeypot.is/v2/IsHoneypot?address=0x940181a94a35a4569e4529a3cdfb74e38fd98631&chainID=8453",
  "Base JSON-RPC (https://base-rpc.publicnode.com, https://base-public.nodies.app, https://base-rpc.polkachu.com): Aerodrome factory getPool, Multicall3 slot0/getReserves/balances now and at historical blocks, eth_getLogs Swap (600 blocks, adaptive)"
 ],
 "computed_at": "2026-10-19T18:24:56.547Z",
 "cached": false,
 "disclaimer": "Not investment advice. Momentum is computed from on-chain pool data and public DEX endpoints only; it says nothing about whether a token is safe to buy.",
 "deprecated": "API v2: enum values are canonical English. Every `<field>_en` mirror is deprecated (identical to the field, removal planned in v3). Add ?lang=da for the previous Danish values (v1 format with _en mirrors). news_sentiment/social level 'neutral' without data is now 'no_data' (old value in legacy_level)."
}