This endpoint is only available to Growth and Enterprise plans.

Endpoint Details

  • URL: wss://api.mobula.io
  • Event Type: pairs

Subscription Formats

The pairs endpoint supports multiple payload formats and can handle both pool addresses and token assets. Subscribe to multiple tokens or pools using the items array format:
{
  "type": "pairs",
  "authorization": "YOUR-API-KEY",
  "payload": {
    "items": [
      {
        "blockchain": "solana",
        "asset": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump"
      },
      {
        "blockchain": "solana",
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
      },
      {
        "blockchain": "evm:1",
        "address": "0x1234567890abcdef1234567890abcdef12345678"
      }
    ],
    "subscriptionTracking": true
  }
}

Parameters

Core Parameters

  • items (required for multiple items): Array of subscription items, each containing:
    • blockchain (required): Blockchain identifier (e.g., "evm:1", "solana")
    • asset (optional): Asset name, symbol, or address
    • symbol (optional): Asset symbol for better identification
    • address (optional): Direct pool or token address
  • asset (optional, legacy): Single token address or name for backward compatibility
  • address (optional, legacy): Single pool address for backward compatibility
  • blockchain (optional): Blockchain identifier for single item subscriptions
  • mode (optional): Stream mode - "asset" or "pair". Defaults to "pair"

Optional Parameters

  • subscriptionId (optional): Unique identifier for your WebSocket connection. Auto-generated if not provided
  • subscriptionTracking (optional, default: false): Include subscription details in response logs for debugging
  • interval (optional, default: 30): Refresh interval in seconds
  • factory (optional): Filter by specific factory contract

Important Constraints

You can now subscribe to both pool addresses and token assets in the same request using the items array format. Each item in the array can specify either an asset (token) or address (pool) along with its blockchain.

Response Data Models

For Token Subscriptions (Asset Mode)

When subscribing to tokens, you’ll receive complete enriched token data with trade information using the full EnrichedTokenData schema:
{
  "pair": "0x1234567890abcdef1234567890abcdef12345678",
  "date": 1704067800000,
  "token_price": 0.0234,
  "token_price_vs": 43.21,
  "token_amount": 1000.0,
  "token_amount_vs": 0.4,
  "token_amount_usd": 23.40,
  "type": "sell",
  "operation": "regular",
  "blockchain": "ethereum",
  "hash": "0xdef789abc012...",
  "sender": "0x1234567890abcdef...",
  "token_amount_raw": "1000000000000000000000",
  "token_amount_raw_vs": "400000000000000000",
  "tokenData": {
    "address": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
    "chainId": "solana",
    "symbol": "EXAMPLE",
    "name": "Example Token",
    "decimals": 9,
    "id": 12345,
    "price": 0.0234,
    "priceToken": 43.21,
    "priceTokenString": "43.210000000000000000000000000000",
    "approximateReserveUSD": 125000.50,
    "approximateReserveTokenRaw": "5000000000000000000",
    "approximateReserveToken": 5000.0,
    "totalSupply": 1000000000,
    "circulatingSupply": 800000000,
    "marketCap": 18720000,
    "marketCapDiluted": 23400000,
    "logo": "https://example.com/token-logo.png",
    "exchange": {
      "name": "Uniswap V3",
      "logo": "https://example.com/uniswap-logo.png"
    },
    "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "source": "uniswap",
    "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "liquidity": 250000.75,
    "liquidityMax": 300000.0,
    "bonded": false,
    "bondingPercentage": 0,
    "bondingCurveAddress": null,
    "preBondingFactory": null,
    "poolAddress": null,
    "top10HoldingsPercentage": 45.6,
    "top50HoldingsPercentage": 68.9,
    "top100HoldingsPercentage": 78.5,
    "top200HoldingsPercentage": 85.2,
    "devHoldingsPercentage": 15.5,
    "insidersHoldingsPercentage": 8.2,
    "bundlersHoldingsPercentage": 2.8,
    "snipersHoldingsPercentage": 3.1,
    "proTradersHoldingsPercentage": 5.0,
    "blockchain": "solana",
    "type": "token",
    "deployer": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
    "createdAt": "2024-12-01T00:00:00.000Z",
    "bonded_at": null,
    "ath": 0.0456,
    "atl": 0.0012,
    "athDate": "2024-12-15T10:30:00.000Z",
    "atlDate": "2024-12-01T00:00:00.000Z",
    "latest_trade_date": "2025-01-15T10:30:00.000Z",
    "price_change_1min": 0.5,
    "price_change_5min": -1.2,
    "price_change_1h": 3.4,
    "price_change_4h": 2.1,
    "price_change_6h": 1.8,
    "price_change_12h": 0.9,
    "price_change_24h": -5.8,
    "price_1min_ago": 0.0232,
    "price_5min_ago": 0.0237,
    "price_1h_ago": 0.0225,
    "price_4h_ago": 0.0230,
    "price_6h_ago": 0.0231,
    "price_12h_ago": 0.0232,
    "price_24h_ago": 0.0247,
    "volume_1min": 1250.75,
    "volume_5min": 8500.25,
    "volume_15min": 42500.80,
    "volume_1h": 45000.80,
    "volume_4h": 180000.25,
    "volume_6h": 270000.40,
    "volume_12h": 540000.50,
    "volume_24h": 890000.50,
    "volume_buy_1min": 675.50,
    "volume_buy_5min": 4500.25,
    "volume_buy_15min": 22500.40,
    "volume_buy_1h": 24000.40,
    "volume_buy_4h": 96000.15,
    "volume_buy_6h": 144000.25,
    "volume_buy_12h": 288000.30,
    "volume_buy_24h": 480000.25,
    "volume_sell_1min": 575.25,
    "volume_sell_5min": 4000.00,
    "volume_sell_15min": 20000.40,
    "volume_sell_1h": 21000.40,
    "volume_sell_4h": 84000.10,
    "volume_sell_6h": 126000.15,
    "volume_sell_12h": 252000.20,
    "volume_sell_24h": 410000.25,
    "trades_1min": 15,
    "trades_5min": 85,
    "trades_15min": 425,
    "trades_1h": 450,
    "trades_4h": 1800,
    "trades_6h": 2700,
    "trades_12h": 5400,
    "trades_24h": 8900,
    "buys_1min": 8,
    "buys_5min": 45,
    "buys_15min": 225,
    "buys_1h": 240,
    "buys_4h": 960,
    "buys_6h": 1440,
    "buys_12h": 2880,
    "buys_24h": 4800,
    "sells_1min": 7,
    "sells_5min": 40,
    "sells_15min": 200,
    "sells_1h": 210,
    "sells_4h": 840,
    "sells_6h": 1260,
    "sells_12h": 2520,
    "sells_24h": 4100,
    "buyers_1min": 8,
    "buyers_5min": 42,
    "buyers_15min": 210,
    "buyers_1h": 235,
    "buyers_4h": 940,
    "buyers_6h": 1410,
    "buyers_12h": 2820,
    "buyers_24h": 4650,
    "sellers_1min": 7,
    "sellers_5min": 38,
    "sellers_15min": 190,
    "sellers_1h": 205,
    "sellers_4h": 820,
    "sellers_6h": 1230,
    "sellers_12h": 2460,
    "sellers_24h": 3950,
    "traders_1min": 14,
    "traders_5min": 78,
    "traders_15min": 390,
    "traders_1h": 420,
    "traders_4h": 1680,
    "traders_6h": 2520,
    "traders_12h": 5040,
    "traders_24h": 8200,
    "fees_paid_1min": 6.25,
    "fees_paid_5min": 42.5,
    "fees_paid_15min": 212.5,
    "fees_paid_1h": 225.0,
    "fees_paid_4h": 900.0,
    "fees_paid_6h": 1350.0,
    "fees_paid_12h": 2700.0,
    "fees_paid_24h": 4450.0,
    "totalFeesPaidUSD": 8900.0,
    "organic_trades_1min": 12,
    "organic_trades_5min": 68,
    "organic_trades_15min": 340,
    "organic_trades_1h": 360,
    "organic_trades_4h": 1440,
    "organic_trades_6h": 2160,
    "organic_trades_12h": 4320,
    "organic_trades_24h": 7120,
    "organic_traders_1min": 11,
    "organic_traders_5min": 62,
    "organic_traders_15min": 310,
    "organic_traders_1h": 335,
    "organic_traders_4h": 1340,
    "organic_traders_6h": 2010,
    "organic_traders_12h": 4020,
    "organic_traders_24h": 6560,
    "organic_volume_1min": 1000.6,
    "organic_volume_5min": 6800.2,
    "organic_volume_15min": 34000.64,
    "organic_volume_1h": 36000.64,
    "organic_volume_4h": 144000.2,
    "organic_volume_6h": 216000.32,
    "organic_volume_12h": 432000.4,
    "organic_volume_24h": 712000.4,
    "organic_volume_buy_1min": 540.32,
    "organic_volume_buy_5min": 3600.16,
    "organic_volume_buy_15min": 18000.32,
    "organic_volume_buy_1h": 19200.32,
    "organic_volume_buy_4h": 76800.12,
    "organic_volume_buy_6h": 115200.2,
    "organic_volume_buy_12h": 230400.24,
    "organic_volume_buy_24h": 384000.2,
    "organic_volume_sell_1min": 460.28,
    "organic_volume_sell_5min": 3200.04,
    "organic_volume_sell_15min": 16000.32,
    "organic_volume_sell_1h": 16800.32,
    "organic_volume_sell_4h": 67200.08,
    "organic_volume_sell_6h": 100800.12,
    "organic_volume_sell_12h": 201600.16,
    "organic_volume_sell_24h": 328000.2,
    "organic_buys_1min": 6,
    "organic_buys_5min": 36,
    "organic_buys_15min": 180,
    "organic_buys_1h": 192,
    "organic_buys_4h": 768,
    "organic_buys_6h": 1152,
    "organic_buys_12h": 2304,
    "organic_buys_24h": 3840,
    "organic_sells_1min": 6,
    "organic_sells_5min": 32,
    "organic_sells_15min": 160,
    "organic_sells_1h": 168,
    "organic_sells_4h": 672,
    "organic_sells_6h": 1008,
    "organic_sells_12h": 2016,
    "organic_sells_24h": 3280,
    "organic_buyers_1min": 6,
    "organic_buyers_5min": 33,
    "organic_buyers_15min": 165,
    "organic_buyers_1h": 188,
    "organic_buyers_4h": 752,
    "organic_buyers_6h": 1128,
    "organic_buyers_12h": 2256,
    "organic_buyers_24h": 3720,
    "organic_sellers_1min": 6,
    "organic_sellers_5min": 30,
    "organic_sellers_15min": 152,
    "organic_sellers_1h": 164,
    "organic_sellers_4h": 656,
    "organic_sellers_6h": 984,
    "organic_sellers_12h": 1968,
    "organic_sellers_24h": 3168,
    "created_at": "2024-12-01T00:00:00.000Z",
    "latest_price": 0.0234,
    "holders_count": 1250,
    "market_cap": 18720000,
    "latest_market_cap": 18720000,
    "description": "Example token description",
    "socials": {
      "twitter": "https://twitter.com/example",
      "website": "https://example.com",
      "telegram": "https://t.me/example",
      "others": {},
      "uri": "https://example.com/token"
    },
    "security": {
      "honeypot": false,
      "rugPull": false,
      "scam": false,
      "verified": true
    },
    "twitterReusesCount": 0,
    "twitterRenameCount": 0,
    "twitterRenameHistory": [],
    "deployerMigrationsCount": 0,
    "dexscreenerListed": true,
    "dexscreenerHeader": null,
    "dexscreenerAdPaid": false,
    "holders_list": [
      {
        "address": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
        "balance": 1000000.0,
        "nativeBalance": 0.5,
        "balanceUsd": 23400.0,
        "boughtAmount": 500000.0,
        "soldAmount": 250000.0,
        "pnl": 11700.0
      }
    ]
  },
  "subscriptionId": "sub_abc123",
  "updated": true,
  "timestamp": 1704067800000
}

For Pool Subscriptions (Pair Mode)

When subscribing to pool addresses, you’ll receive complete enriched pool data with trade information using the full EnrichedPoolData schema:
{
  "pair": "0x1234567890abcdef1234567890abcdef12345678",
  "date": 1704067800000,
  "token_price": 2500.75,
  "token_price_vs": 1.0,
  "token_amount": 1.5,
  "token_amount_vs": 3751.125,
  "token_amount_usd": 3751.125,
  "type": "buy",
  "operation": "regular",
  "blockchain": "ethereum",
  "hash": "0xabc123def456...",
  "sender": "0x9876543210fedcba...",
  "token_amount_raw": "1500000000000000000",
  "token_amount_raw_vs": "3751125000",
  "pairData": {
    "token0": {
      "address": "0xA0b86a33E6441e98f0bE9F9f7D5D2b5c3D8F4e7c",
      "chainId": "evm:1",
      "symbol": "WETH",
      "name": "Wrapped Ether",
      "decimals": 18,
      "id": 12345,
      "price": 2500.50,
      "priceToken": 1.0,
      "priceTokenString": "1.000000000000000000000000000000",
      "approximateReserveUSD": 90000000.0,
      "approximateReserveTokenRaw": "36000000000000000000",
      "approximateReserveToken": 36000.0,
      "totalSupply": 1000000000000000000000000,
      "circulatingSupply": 900000000000000000000000,
      "marketCap": 2250450000000,
      "marketCapDiluted": 2500500000000,
      "logo": "https://example.com/weth-logo.png",
      "exchange": {
        "name": "Uniswap V3",
        "logo": "https://example.com/uniswap-logo.png"
      },
      "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "source": "uniswap",
      "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "liquidity": 100000000.0,
      "liquidityMax": 120000000.0,
      "bonded": false,
      "bondingPercentage": 0,
      "bondingCurveAddress": null,
      "preBondingFactory": null,
      "poolAddress": null,
      "top10HoldingsPercentage": 25.3,
      "top50HoldingsPercentage": 45.6,
      "top100HoldingsPercentage": 58.7,
      "top200HoldingsPercentage": 68.9,
      "devHoldingsPercentage": 2.1,
      "insidersHoldingsPercentage": 1.8,
      "bundlersHoldingsPercentage": 0.5,
      "snipersHoldingsPercentage": 1.2,
      "proTradersHoldingsPercentage": 3.5,
      "blockchain": "ethereum",
      "type": "token",
      "deployer": "0x1234567890abcdef...",
      "createdAt": "2020-01-01T00:00:00.000Z",
      "bonded_at": null,
      "ath": 4878.26,
      "atl": 88.01,
      "athDate": "2021-11-10T14:00:00.000Z",
      "atlDate": "2019-02-08T00:00:00.000Z"
    },
    "token1": {
      "address": "0xB0c87a44F6c95d6E5C4e8g7F9E3D7c2b1A9e8f6d",
      "chainId": "evm:1",
      "symbol": "USDC",
      "name": "USD Coin",
      "decimals": 6,
      "id": 67890,
      "price": 1.0,
      "priceToken": 0.0004,
      "priceTokenString": "0.000400000000000000000000000000",
      "approximateReserveUSD": 90000000.0,
      "approximateReserveTokenRaw": "90000000000",
      "approximateReserveToken": 90000000.0,
      "totalSupply": 1000000000000000000000000000,
      "circulatingSupply": 900000000000000000000000000,
      "marketCap": 1000000000000,
      "marketCapDiluted": 1000000000000,
      "logo": "https://example.com/usdc-logo.png",
      "exchange": {
        "name": "Circle",
        "logo": "https://example.com/circle-logo.png"
      },
      "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "source": "uniswap",
      "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "liquidity": 100000000.0,
      "liquidityMax": 120000000.0,
      "bonded": false,
      "bondingPercentage": 0,
      "bondingCurveAddress": null,
      "preBondingFactory": null,
      "poolAddress": null,
      "top10HoldingsPercentage": 15.2,
      "top50HoldingsPercentage": 35.7,
      "top100HoldingsPercentage": 48.9,
      "top200HoldingsPercentage": 58.3,
      "devHoldingsPercentage": 0.5,
      "insidersHoldingsPercentage": 0.3,
      "bundlersHoldingsPercentage": 0.1,
      "snipersHoldingsPercentage": 0.8,
      "proTradersHoldingsPercentage": 1.5,
      "blockchain": "ethereum",
      "type": "token",
      "deployer": "0x1234567890abcdef...",
      "createdAt": "2018-01-01T00:00:00.000Z",
      "bonded_at": null,
      "ath": 1.17,
      "atl": 0.88,
      "athDate": "2021-05-19T14:00:00.000Z",
      "atlDate": "2020-03-13T00:00:00.000Z"
    },
    "volume24h": 1500000.75,
    "liquidity": 5000000.25,
    "blockchain": "Ethereum",
    "address": "0x1234567890abcdef1234567890abcdef12345678",
    "createdAt": "2024-01-01T00:00:00.000Z",
    "type": "uniswap-v3",
    "baseToken": "token0",
    "exchange": {
      "name": "Uniswap V3",
      "logo": "https://example.com/uniswap-logo.png"
    },
    "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "quoteToken": "token1",
    "price": 2500.50,
    "priceToken": 0.0004,
    "priceTokenString": "0.000400000000000000000000000000",
    "athToken0": 4878.26,
    "athToken1": 1.17,
    "atlToken0": 88.01,
    "atlToken1": 0.88,
    "athDateToken0": "2021-11-10T14:00:00.000Z",
    "athDateToken1": "2021-05-19T14:00:00.000Z",
    "atlDateToken0": "2019-02-08T00:00:00.000Z",
    "atlDateToken1": "2020-03-13T00:00:00.000Z",
    "bonded": false,
    "bondingPercentage": 0,
    "bondingCurveAddress": null,
    "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "top10Holdings": 35.2,
    "top50Holdings": 58.7,
    "top100Holdings": 68.9,
    "top200Holdings": 78.3,
    "devHoldings": 12.5,
    "insidersHoldings": 6.8,
    "bundlersHoldings": 1.9,
    "snipersHoldings": 2.1,
    "proTradersHolding": 5.0,
    "totalFeesPaidUSD": 150000.0,
    "price_change_1min": 0.1,
    "price_change_5min": -0.5,
    "price_change_1h": 2.3,
    "price_change_4h": 1.2,
    "price_change_6h": 0.8,
    "price_change_12h": -0.3,
    "price_change_24h": -3.8,
    "price_1min_ago": 2500.25,
    "price_5min_ago": 2502.75,
    "price_1h_ago": 2444.15,
    "price_4h_ago": 2471.0,
    "price_6h_ago": 2480.6,
    "price_12h_ago": 2508.05,
    "price_24h_ago": 2598.59,
    "volume_1min": 15000.50,
    "volume_5min": 85000.75,
    "volume_15min": 425000.25,
    "volume_1h": 450000.25,
    "volume_4h": 1800000.0,
    "volume_6h": 2700000.0,
    "volume_12h": 5400000.0,
    "volume_24h": 1500000.75,
    "volume_buy_1min": 8000.25,
    "volume_buy_5min": 45000.50,
    "volume_buy_15min": 225000.15,
    "volume_buy_1h": 240000.15,
    "volume_buy_4h": 960000.0,
    "volume_buy_6h": 1440000.0,
    "volume_buy_12h": 2880000.0,
    "volume_buy_24h": 800000.40,
    "volume_sell_1min": 7000.25,
    "volume_sell_5min": 40000.25,
    "volume_sell_15min": 200000.10,
    "volume_sell_1h": 210000.10,
    "volume_sell_4h": 840000.0,
    "volume_sell_6h": 1260000.0,
    "volume_sell_12h": 2520000.0,
    "volume_sell_24h": 700000.35,
    "trades_1min": 25,
    "trades_5min": 125,
    "trades_15min": 625,
    "trades_1h": 650,
    "trades_4h": 2600,
    "trades_6h": 3900,
    "trades_12h": 7800,
    "trades_24h": 12000,
    "buys_1min": 13,
    "buys_5min": 68,
    "buys_15min": 340,
    "buys_1h": 340,
    "buys_4h": 1360,
    "buys_6h": 2040,
    "buys_12h": 4080,
    "buys_24h": 6500,
    "sells_1min": 12,
    "sells_5min": 57,
    "sells_15min": 285,
    "sells_1h": 310,
    "sells_4h": 1240,
    "sells_6h": 1860,
    "sells_12h": 3720,
    "sells_24h": 5500,
    "buyers_1min": 13,
    "buyers_5min": 65,
    "buyers_15min": 325,
    "buyers_1h": 325,
    "buyers_4h": 1300,
    "buyers_6h": 1950,
    "buyers_12h": 3900,
    "buyers_24h": 6200,
    "sellers_1min": 12,
    "sellers_5min": 55,
    "sellers_15min": 275,
    "sellers_1h": 295,
    "sellers_4h": 1180,
    "sellers_6h": 1770,
    "sellers_12h": 3540,
    "sellers_24h": 5200,
    "traders_1min": 24,
    "traders_5min": 115,
    "traders_15min": 575,
    "traders_1h": 595,
    "traders_4h": 2380,
    "traders_6h": 3570,
    "traders_12h": 7140,
    "traders_24h": 10400,
    "fees_paid_1min": 75.0,
    "fees_paid_5min": 425.0,
    "fees_paid_15min": 2125.0,
    "fees_paid_1h": 2250.0,
    "fees_paid_4h": 9000.0,
    "fees_paid_6h": 13500.0,
    "fees_paid_12h": 27000.0,
    "fees_paid_24h": 75000.0
  },
  "subscriptionId": "sub_def456",
  "updated": true,
  "timestamp": 1704067800000
}

Real-Time Updates

After the initial subscription response, you’ll receive real-time updates whenever new trades occur. These updates include both the trade data and refreshed market data.

Real-Time Trade Updates for Pool Subscriptions

When trades happen on subscribed pool addresses, you’ll receive:
{
  "pair": "0x1234567890abcdef1234567890abcdef12345678",
  "date": 1704067800000,
  "token_price": 2500.75,
  "token_price_vs": 1.0,
  "token_amount": 1.5,
  "token_amount_vs": 3751.125,
  "token_amount_usd": 3751.125,
  "type": "buy",
  "operation": "regular",
  "blockchain": "Ethereum",
  "hash": "0xabc123def456...",
  "sender": "0x9876543210fedcba...",
  "token_amount_raw": "1500000000000000000",
  "token_amount_raw_vs": "3751125000",
  
  "pairData": {
    // Complete EnrichedPoolData structure with all fields from EnrichedMarketData.ts
    "token0": {
      "address": "0xA0b86a33E6441e98f0bE9F9f7D5D2b5c3D8F4e7c",
      "chainId": "evm:1",
      "symbol": "WETH",
      "name": "Wrapped Ether",
      "decimals": 18,
      "id": 12345,
      "price": 2500.50,
      "priceToken": 1.0,
      "priceTokenString": "1.000000000000000000000000000000",
      "approximateReserveUSD": 90000000.0,
      "approximateReserveTokenRaw": "36000000000000000000",
      "approximateReserveToken": 36000.0,
      "totalSupply": 1000000000000000000000000,
      "circulatingSupply": 900000000000000000000000,
      "marketCap": 2250450000000,
      "marketCapDiluted": 2500500000000,
      "logo": "https://example.com/weth-logo.png",
      "exchange": {
        "name": "Uniswap V3",
        "logo": "https://example.com/uniswap-logo.png"
      },
      "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "source": "uniswap",
      "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "liquidity": 100000000.0,
      "liquidityMax": 120000000.0,
      "bonded": false,
      "bondingPercentage": 0,
      "bondingCurveAddress": null,
      "preBondingFactory": null,
      "poolAddress": null,
      "top10HoldingsPercentage": 25.3,
      "top50HoldingsPercentage": 45.6,
      "top100HoldingsPercentage": 58.7,
      "top200HoldingsPercentage": 68.9,
      "devHoldingsPercentage": 2.1,
      "insidersHoldingsPercentage": 1.8,
      "bundlersHoldingsPercentage": 0.5,
      "snipersHoldingsPercentage": 1.2,
      "proTradersHoldingsPercentage": 3.5,
      "blockchain": "ethereum",
      "type": "token",
      "deployer": "0x1234567890abcdef...",
      "createdAt": "2020-01-01T00:00:00.000Z",
      "bonded_at": null,
      "ath": 4878.26,
      "atl": 88.01,
      "athDate": "2021-11-10T14:00:00.000Z",
      "atlDate": "2019-02-08T00:00:00.000Z"
    },
    "token1": {
      "address": "0xB0c87a44F6c95d6E5C4e8g7F9E3D7c2b1A9e8f6d",
      "chainId": "evm:1",
      "symbol": "USDC",
      "name": "USD Coin",
      "decimals": 6,
      "id": 67890,
      "price": 1.0,
      "priceToken": 0.0004,
      "priceTokenString": "0.000400000000000000000000000000",
      "approximateReserveUSD": 90000000.0,
      "approximateReserveTokenRaw": "90000000000",
      "approximateReserveToken": 90000000.0,
      "totalSupply": 1000000000000000000000000000,
      "circulatingSupply": 900000000000000000000000000,
      "marketCap": 1000000000000,
      "marketCapDiluted": 1000000000000,
      "logo": "https://example.com/usdc-logo.png",
      "exchange": {
        "name": "Circle",
        "logo": "https://example.com/circle-logo.png"
      },
      "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "source": "uniswap",
      "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
      "liquidity": 100000000.0,
      "liquidityMax": 120000000.0,
      "bonded": false,
      "bondingPercentage": 0,
      "bondingCurveAddress": null,
      "preBondingFactory": null,
      "poolAddress": null,
      "top10HoldingsPercentage": 15.2,
      "top50HoldingsPercentage": 35.7,
      "top100HoldingsPercentage": 48.9,
      "top200HoldingsPercentage": 58.3,
      "devHoldingsPercentage": 0.5,
      "insidersHoldingsPercentage": 0.3,
      "bundlersHoldingsPercentage": 0.1,
      "snipersHoldingsPercentage": 0.8,
      "proTradersHoldingsPercentage": 1.5,
      "blockchain": "ethereum",
      "type": "token",
      "deployer": "0x1234567890abcdef...",
      "createdAt": "2018-01-01T00:00:00.000Z",
      "bonded_at": null,
      "ath": 1.17,
      "atl": 0.88,
      "athDate": "2021-05-19T14:00:00.000Z",
      "atlDate": "2020-03-13T00:00:00.000Z"
    },
    "volume24h": 1500000.75,
    "liquidity": 5000000.25,
    "blockchain": "Ethereum",
    "address": "0x1234567890abcdef1234567890abcdef12345678",
    "createdAt": "2024-01-01T00:00:00.000Z",
    "type": "uniswap-v3",
    "baseToken": "token0",
    "exchange": {
      "name": "Uniswap V3",
      "logo": "https://example.com/uniswap-logo.png"
    },
    "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "quoteToken": "token1",
    "price": 2500.50,
    "priceToken": 0.0004,
    "priceTokenString": "0.000400000000000000000000000000",
    "athToken0": 4878.26,
    "athToken1": 1.17,
    "atlToken0": 88.01,
    "atlToken1": 0.88,
    "athDateToken0": "2021-11-10T14:00:00.000Z",
    "athDateToken1": "2021-05-19T14:00:00.000Z",
    "atlDateToken0": "2019-02-08T00:00:00.000Z",
    "atlDateToken1": "2020-03-13T00:00:00.000Z",
    "bonded": false,
    "bondingPercentage": 0,
    "bondingCurveAddress": null,
    "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "top10Holdings": 35.2,
    "top50Holdings": 58.7,
    "top100Holdings": 68.9,
    "top200Holdings": 78.3,
    "devHoldings": 12.5,
    "insidersHoldings": 6.8,
    "bundlersHoldings": 1.9,
    "snipersHoldings": 2.1,
    "proTradersHolding": 5.0,
    "totalFeesPaidUSD": 150000.0,
    "price_change_1min": 0.1,
    "price_change_5min": -0.5,
    "price_change_1h": 2.3,
    "price_change_4h": 1.2,
    "price_change_6h": 0.8,
    "price_change_12h": -0.3,
    "price_change_24h": -3.8,
    "price_1min_ago": 2500.25,
    "price_5min_ago": 2502.75,
    "price_1h_ago": 2444.15,
    "price_4h_ago": 2471.0,
    "price_6h_ago": 2480.6,
    "price_12h_ago": 2508.05,
    "price_24h_ago": 2598.59,
    "volume_1min": 15000.50,
    "volume_5min": 85000.75,
    "volume_15min": 425000.25,
    "volume_1h": 450000.25,
    "volume_4h": 1800000.0,
    "volume_6h": 2700000.0,
    "volume_12h": 5400000.0,
    "volume_24h": 1500000.75,
    "volume_buy_1min": 8000.25,
    "volume_buy_5min": 45000.50,
    "volume_buy_15min": 225000.15,
    "volume_buy_1h": 240000.15,
    "volume_buy_4h": 960000.0,
    "volume_buy_6h": 1440000.0,
    "volume_buy_12h": 2880000.0,
    "volume_buy_24h": 800000.40,
    "volume_sell_1min": 7000.25,
    "volume_sell_5min": 40000.25,
    "volume_sell_15min": 200000.10,
    "volume_sell_1h": 210000.10,
    "volume_sell_4h": 840000.0,
    "volume_sell_6h": 1260000.0,
    "volume_sell_12h": 2520000.0,
    "volume_sell_24h": 700000.35,
    "trades_1min": 25,
    "trades_5min": 125,
    "trades_15min": 625,
    "trades_1h": 650,
    "trades_4h": 2600,
    "trades_6h": 3900,
    "trades_12h": 7800,
    "trades_24h": 12000,
    "buys_1min": 13,
    "buys_5min": 68,
    "buys_15min": 340,
    "buys_1h": 340,
    "buys_4h": 1360,
    "buys_6h": 2040,
    "buys_12h": 4080,
    "buys_24h": 6500,
    "sells_1min": 12,
    "sells_5min": 57,
    "sells_15min": 285,
    "sells_1h": 310,
    "sells_4h": 1240,
    "sells_6h": 1860,
    "sells_12h": 3720,
    "sells_24h": 5500,
    "buyers_1min": 13,
    "buyers_5min": 65,
    "buyers_15min": 325,
    "buyers_1h": 325,
    "buyers_4h": 1300,
    "buyers_6h": 1950,
    "buyers_12h": 3900,
    "buyers_24h": 6200,
    "sellers_1min": 12,
    "sellers_5min": 55,
    "sellers_15min": 275,
    "sellers_1h": 295,
    "sellers_4h": 1180,
    "sellers_6h": 1770,
    "sellers_12h": 3540,
    "sellers_24h": 5200,
    "traders_1min": 24,
    "traders_5min": 115,
    "traders_15min": 575,
    "traders_1h": 595,
    "traders_4h": 2380,
    "traders_6h": 3570,
    "traders_12h": 7140,
    "traders_24h": 10400,
    "fees_paid_1min": 75.0,
    "fees_paid_5min": 425.0,
    "fees_paid_15min": 2125.0,
    "fees_paid_1h": 2250.0,
    "fees_paid_4h": 9000.0,
    "fees_paid_6h": 13500.0,
    "fees_paid_12h": 27000.0,
    "fees_paid_24h": 75000.0
  },
  
  "subscriptionId": "sub_def456",
  "updated": true,
  "timestamp": 1704067800000
}

Real-Time Trade Updates for Token Subscriptions

When trades happen involving subscribed tokens, you’ll receive:
{
  "pair": "0x1234567890abcdef1234567890abcdef12345678",
  "date": 1704067800000,
  "token_price": 0.0234,
  "token_price_vs": 2500.75,
  "token_amount": 1000.0,
  "token_amount_vs": 0.4,
  "token_amount_usd": 23.40,
  "type": "sell",
  "operation": "regular",
  "blockchain": "Ethereum",
  "hash": "0xdef789abc012...",
  "sender": "0x1234567890abcdef...",
  "token_amount_raw": "1000000000000000000000",
  "token_amount_raw_vs": "400000000000000000",
  
  "tokenData": {
    // Complete EnrichedTokenData structure with all fields from EnrichedMarketData.ts
    "address": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
    "chainId": "solana",
    "symbol": "EXAMPLE",
    "name": "Example Token",
    "decimals": 9,
    "id": 12345,
    "price": 0.0234,
    "priceToken": 43.21,
    "priceTokenString": "43.210000000000000000000000000000",
    "approximateReserveUSD": 125000.50,
    "approximateReserveTokenRaw": "5000000000000000000",
    "approximateReserveToken": 5000.0,
    "totalSupply": 1000000000,
    "circulatingSupply": 800000000,
    "marketCap": 18720000,
    "marketCapDiluted": 23400000,
    "logo": "https://example.com/token-logo.png",
    "exchange": {
      "name": "Uniswap V3",
      "logo": "https://example.com/uniswap-logo.png"
    },
    "factory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "source": "uniswap",
    "sourceFactory": "0x1F98431c8aD98523631AE4a59f267346ea31F984",
    "liquidity": 250000.75,
    "liquidityMax": 300000.0,
    "bonded": false,
    "bondingPercentage": 0,
    "bondingCurveAddress": null,
    "preBondingFactory": null,
    "poolAddress": null,
    "top10HoldingsPercentage": 45.6,
    "top50HoldingsPercentage": 68.9,
    "top100HoldingsPercentage": 78.5,
    "top200HoldingsPercentage": 85.2,
    "devHoldingsPercentage": 15.5,
    "insidersHoldingsPercentage": 8.2,
    "bundlersHoldingsPercentage": 2.8,
    "snipersHoldingsPercentage": 3.1,
    "proTradersHoldingsPercentage": 5.0,
    "blockchain": "solana",
    "type": "token",
    "deployer": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
    "createdAt": "2024-12-01T00:00:00.000Z",
    "bonded_at": null,
    "ath": 0.0456,
    "atl": 0.0012,
    "athDate": "2024-12-15T10:30:00.000Z",
    "atlDate": "2024-12-01T00:00:00.000Z",
    "latest_trade_date": "2025-01-15T10:30:00.000Z",
    "price_change_1min": 0.5,
    "price_change_5min": -1.2,
    "price_change_1h": 3.4,
    "price_change_4h": 2.1,
    "price_change_6h": 1.8,
    "price_change_12h": 0.9,
    "price_change_24h": -5.8,
    "price_1min_ago": 0.0232,
    "price_5min_ago": 0.0237,
    "price_1h_ago": 0.0225,
    "price_4h_ago": 0.0230,
    "price_6h_ago": 0.0231,
    "price_12h_ago": 0.0232,
    "price_24h_ago": 0.0247,
    "volume_1min": 1250.75,
    "volume_5min": 8500.25,
    "volume_15min": 42500.80,
    "volume_1h": 45000.80,
    "volume_4h": 180000.25,
    "volume_6h": 270000.40,
    "volume_12h": 540000.50,
    "volume_24h": 890000.50,
    "volume_buy_1min": 675.50,
    "volume_buy_5min": 4500.25,
    "volume_buy_15min": 22500.40,
    "volume_buy_1h": 24000.40,
    "volume_buy_4h": 96000.15,
    "volume_buy_6h": 144000.25,
    "volume_buy_12h": 288000.30,
    "volume_buy_24h": 480000.25,
    "volume_sell_1min": 575.25,
    "volume_sell_5min": 4000.00,
    "volume_sell_15min": 20000.40,
    "volume_sell_1h": 21000.40,
    "volume_sell_4h": 84000.10,
    "volume_sell_6h": 126000.15,
    "volume_sell_12h": 252000.20,
    "volume_sell_24h": 410000.25,
    "trades_1min": 15,
    "trades_5min": 85,
    "trades_15min": 425,
    "trades_1h": 450,
    "trades_4h": 1800,
    "trades_6h": 2700,
    "trades_12h": 5400,
    "trades_24h": 8900,
    "buys_1min": 8,
    "buys_5min": 45,
    "buys_15min": 225,
    "buys_1h": 240,
    "buys_4h": 960,
    "buys_6h": 1440,
    "buys_12h": 2880,
    "buys_24h": 4800,
    "sells_1min": 7,
    "sells_5min": 40,
    "sells_15min": 200,
    "sells_1h": 210,
    "sells_4h": 840,
    "sells_6h": 1260,
    "sells_12h": 2520,
    "sells_24h": 4100,
    "buyers_1min": 8,
    "buyers_5min": 42,
    "buyers_15min": 210,
    "buyers_1h": 235,
    "buyers_4h": 940,
    "buyers_6h": 1410,
    "buyers_12h": 2820,
    "buyers_24h": 4650,
    "sellers_1min": 7,
    "sellers_5min": 38,
    "sellers_15min": 190,
    "sellers_1h": 205,
    "sellers_4h": 820,
    "sellers_6h": 1230,
    "sellers_12h": 2460,
    "sellers_24h": 3950,
    "traders_1min": 14,
    "traders_5min": 78,
    "traders_15min": 390,
    "traders_1h": 420,
    "traders_4h": 1680,
    "traders_6h": 2520,
    "traders_12h": 5040,
    "traders_24h": 8200,
    "fees_paid_1min": 6.25,
    "fees_paid_5min": 42.5,
    "fees_paid_15min": 212.5,
    "fees_paid_1h": 225.0,
    "fees_paid_4h": 900.0,
    "fees_paid_6h": 1350.0,
    "fees_paid_12h": 2700.0,
    "fees_paid_24h": 4450.0,
    "totalFeesPaidUSD": 8900.0,
    "organic_trades_1min": 12,
    "organic_trades_5min": 68,
    "organic_trades_15min": 340,
    "organic_trades_1h": 360,
    "organic_trades_4h": 1440,
    "organic_trades_6h": 2160,
    "organic_trades_12h": 4320,
    "organic_trades_24h": 7120,
    "organic_traders_1min": 11,
    "organic_traders_5min": 62,
    "organic_traders_15min": 310,
    "organic_traders_1h": 335,
    "organic_traders_4h": 1340,
    "organic_traders_6h": 2010,
    "organic_traders_12h": 4020,
    "organic_traders_24h": 6560,
    "organic_volume_1min": 1000.6,
    "organic_volume_5min": 6800.2,
    "organic_volume_15min": 34000.64,
    "organic_volume_1h": 36000.64,
    "organic_volume_4h": 144000.2,
    "organic_volume_6h": 216000.32,
    "organic_volume_12h": 432000.4,
    "organic_volume_24h": 712000.4,
    "organic_volume_buy_1min": 540.32,
    "organic_volume_buy_5min": 3600.16,
    "organic_volume_buy_15min": 18000.32,
    "organic_volume_buy_1h": 19200.32,
    "organic_volume_buy_4h": 76800.12,
    "organic_volume_buy_6h": 115200.2,
    "organic_volume_buy_12h": 230400.24,
    "organic_volume_buy_24h": 384000.2,
    "organic_volume_sell_1min": 460.28,
    "organic_volume_sell_5min": 3200.04,
    "organic_volume_sell_15min": 16000.32,
    "organic_volume_sell_1h": 16800.32,
    "organic_volume_sell_4h": 67200.08,
    "organic_volume_sell_6h": 100800.12,
    "organic_volume_sell_12h": 201600.16,
    "organic_volume_sell_24h": 328000.2,
    "organic_buys_1min": 6,
    "organic_buys_5min": 36,
    "organic_buys_15min": 180,
    "organic_buys_1h": 192,
    "organic_buys_4h": 768,
    "organic_buys_6h": 1152,
    "organic_buys_12h": 2304,
    "organic_buys_24h": 3840,
    "organic_sells_1min": 6,
    "organic_sells_5min": 32,
    "organic_sells_15min": 160,
    "organic_sells_1h": 168,
    "organic_sells_4h": 672,
    "organic_sells_6h": 1008,
    "organic_sells_12h": 2016,
    "organic_sells_24h": 3280,
    "organic_buyers_1min": 6,
    "organic_buyers_5min": 33,
    "organic_buyers_15min": 165,
    "organic_buyers_1h": 188,
    "organic_buyers_4h": 752,
    "organic_buyers_6h": 1128,
    "organic_buyers_12h": 2256,
    "organic_buyers_24h": 3720,
    "organic_sellers_1min": 6,
    "organic_sellers_5min": 30,
    "organic_sellers_15min": 152,
    "organic_sellers_1h": 164,
    "organic_sellers_4h": 656,
    "organic_sellers_6h": 984,
    "organic_sellers_12h": 1968,
    "organic_sellers_24h": 3168,
    "created_at": "2024-12-01T00:00:00.000Z",
    "latest_price": 0.0234,
    "holders_count": 1250,
    "market_cap": 18720000,
    "latest_market_cap": 18720000,
    "description": "Example token description",
    "socials": {
      "twitter": "https://twitter.com/example",
      "website": "https://example.com",
      "telegram": "https://t.me/example",
      "others": {},
      "uri": "https://example.com/token"
    },
    "security": {
      "honeypot": false,
      "rugPull": false,
      "scam": false,
      "verified": true
    },
    "twitterReusesCount": 0,
    "twitterRenameCount": 0,
    "twitterRenameHistory": [],
    "deployerMigrationsCount": 0,
    "dexscreenerListed": true,
    "dexscreenerHeader": null,
    "dexscreenerAdPaid": false,
    "holders_list": [
      {
        "address": "3vz82EWYv8xnc7Cm7qSgERcpMeqw92PcX8PBz88npump",
        "balance": 1000000.0,
        "nativeBalance": 0.5,
        "balanceUsd": 23400.0,
        "boughtAmount": 500000.0,
        "soldAmount": 250000.0,
        "pnl": 11700.0
      }
    ]
  },
  
  "subscriptionId": "sub_abc123",
  "updated": true,
  "timestamp": 1704067800000
}

Trade Data Fields

The real-time trade updates include the following fields from CuratedSwap:
  • pair: Pool address where the trade occurred
  • date: Trade timestamp in milliseconds
  • token_price: Price of the base token in USD
  • token_price_vs: Price of the quote token in USD
  • token_amount: Amount of base token traded
  • token_amount_vs: Amount of quote token traded
  • token_amount_usd: USD value of the trade
  • type: Trade type - "buy" or "sell"
  • operation: Operation type (e.g., "regular", "limit")
  • blockchain: Human-readable blockchain name
  • hash: Transaction hash
  • sender: Address that initiated the transaction
  • token_amount_raw: Raw token amount (string to handle large numbers)
  • token_amount_raw_vs: Raw quote token amount (string)
Additionally, the response includes either:
  • pairData: Full EnrichedPoolData for pool subscriptions
  • tokenData: Full EnrichedTokenData for token subscriptions

Unsubscribing from the Stream

Unsubscribe from All Streams

{
  "type": "unsubscribe",
  "authorization": "YOUR-API-KEY",
  "payload": {}
}

Unsubscribe from Specific Subscription

{
  "type": "unsubscribe", 
  "authorization": "YOUR-API-KEY",
  "payload": {
    "subscriptionId": "sub_abc123"
  }
}

Unsubscribe from All Pairs Streams

{
  "type": "unsubscribe",
  "authorization": "YOUR-API-KEY", 
  "payload": {
    "type": "pairs"
  }
}
If you didn’t provide a subscriptionId when subscribing, one is auto-generated. To retrieve it, set "subscriptionTracking": true in the subscription payload.