> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobula.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Token Filters Reference

> Complete reference for all available filters in Token Filters Stream API

<Warning>
  **Alpha feature**: Token Filters access is gated. Ask the Mobula team to enable it for your account. Until then, use Pulse; it works the same way for the same view/filter workflow.
</Warning>

<Tip>
  This page documents all available filters for [Token Filters Stream](/indexing-stream/stream/websocket/token-filters-stream). All filter field names use **camelCase** matching the output format.
</Tip>

## Filter Structure

Filters are specified in the `filters` object of each view. The view root contains view controls such as `model`, `sortBy`, `sortOrder`, `limit`, `offset`, `selectors`, `ohlcv`, `ohlcvTimeframe`, and `filters`.

```json theme={null}
{
  "mode": "token",
  "views": {
    "my-view": {
      "sortBy": "volume1hUSD",
      "sortOrder": "desc",
      "limit": 50,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "marketCapUSD": { "gte": 10000, "lte": 1000000 },
        "volume1hUSD": { "gte": 500 },
        "bonded": { "equals": false }
      }
    }
  }
}
```

## Filter Operators

| Operator     | Description           | Example                                               |
| ------------ | --------------------- | ----------------------------------------------------- |
| `equals`     | Exact match           | `{ "bonded": { "equals": true } }`                    |
| `gte`        | Greater than or equal | `{ "marketCapUSD": { "gte": 10000 } }`                |
| `lte`        | Less than or equal    | `{ "volume1hUSD": { "lte": 100000 } }`                |
| `gt`         | Greater than          | `{ "holdersCount": { "gt": 100 } }`                   |
| `lt`         | Less than             | `{ "bondingPercentage": { "lt": 100 } }`              |
| `not`        | Not equal             | `{ "source": { "not": null } }`                       |
| `in`         | Value in array        | `{ "source": { "in": ["pumpfun", "moonshot-evm"] } }` |
| `contains`   | String contains       | `{ "symbol": { "contains": "DOGE" } }`                |
| `startsWith` | String prefix         | `{ "chainId": { "startsWith": "ton" } }`              |
| `endsWith`   | String suffix         | `{ "symbol": { "endsWith": "INU" } }`                 |

<Note>
  For null checks, use `{ "equals": null }` or `{ "not": null }`. Logical groups are supported with `AND`, `OR`, and `NOT` at any filter level.
</Note>

***

## GraphQL / Codex-Compatible Aliases

Token Filters Stream accepts the native Token Filters field names and the GraphQL/Codex-style aliases below. Aliases work on both the initial query and real-time WebSocket updates.

| Alias                                                                                                                | Native field                                                                                                                              |
| -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `marketCap`                                                                                                          | `marketCapUSD`                                                                                                                            |
| `fdv`                                                                                                                | `marketCapDilutedUSD`                                                                                                                     |
| `holders`                                                                                                            | `holdersCount`                                                                                                                            |
| `top10HoldersPercent`                                                                                                | `top10HoldingsPercentage`                                                                                                                 |
| `sniperCount`                                                                                                        | `snipersCount`                                                                                                                            |
| `sniperHeldPercentage`                                                                                               | `snipersHoldingsPercentage`                                                                                                               |
| `bundlerCount`                                                                                                       | `bundlersCount`                                                                                                                           |
| `bundlerHeldPercentage`                                                                                              | `bundlersHoldingsPercentage`                                                                                                              |
| `insiderCount`                                                                                                       | `insidersCount`                                                                                                                           |
| `insiderHeldPercentage`                                                                                              | `insidersHoldingsPercentage`                                                                                                              |
| `devHeldPercentage`                                                                                                  | `devHoldingsPercentage`                                                                                                                   |
| `launchpadGraduationPercent`                                                                                         | `bondingPercentage`                                                                                                                       |
| `change5m`, `change1`, `change4`, `change12`, `change24`                                                             | `priceChange5minPercentage`, `priceChange1hPercentage`, `priceChange4hPercentage`, `priceChange12hPercentage`, `priceChange24hPercentage` |
| `volume5m`, `volume1`, `volume4`, `volume12`, `volume24`                                                             | `volume5minUSD`, `volume1hUSD`, `volume4hUSD`, `volume12hUSD`, `volume24hUSD`                                                             |
| `buyVolume5m`, `buyVolume1`, `buyVolume4`, `buyVolume12`, `buyVolume24`                                              | `volumeBuy5minUSD`, `volumeBuy1hUSD`, `volumeBuy4hUSD`, `volumeBuy12hUSD`, `volumeBuy24hUSD`                                              |
| `sellVolume5m`, `sellVolume1`, `sellVolume4`, `sellVolume12`, `sellVolume24`                                         | `volumeSell5minUSD`, `volumeSell1hUSD`, `volumeSell4hUSD`, `volumeSell12hUSD`, `volumeSell24hUSD`                                         |
| `txnCount5m`, `txnCount1`, `txnCount4`, `txnCount12`, `txnCount24`                                                   | `trades5min`, `trades1h`, `trades4h`, `trades12h`, `trades24h`                                                                            |
| `buyCount5m`, `buyCount1`, `buyCount4`, `buyCount12`, `buyCount24`                                                   | `buys5min`, `buys1h`, `buys4h`, `buys12h`, `buys24h`                                                                                      |
| `sellCount5m`, `sellCount1`, `sellCount4`, `sellCount12`, `sellCount24`                                              | `sells5min`, `sells1h`, `sells4h`, `sells12h`, `sells24h`                                                                                 |
| `uniqueBuys5m`, `uniqueBuys1`, `uniqueBuys4`, `uniqueBuys12`, `uniqueBuys24`                                         | `buyers5min`, `buyers1h`, `buyers4h`, `buyers12h`, `buyers24h`                                                                            |
| `uniqueSells5m`, `uniqueSells1`, `uniqueSells4`, `uniqueSells12`, `uniqueSells24`                                    | `sellers5min`, `sellers1h`, `sellers4h`, `sellers12h`, `sellers24h`                                                                       |
| `uniqueTransactions5m`, `uniqueTransactions1`, `uniqueTransactions4`, `uniqueTransactions12`, `uniqueTransactions24` | `traders5min`, `traders1h`, `traders4h`, `traders12h`, `traders24h`                                                                       |
| `totalFees5m`, `totalFees1`, `totalFees4`, `totalFees12`, `totalFees24`                                              | `feesPaid5minUSD`, `feesPaid1hUSD`, `feesPaid4hUSD`, `feesPaid12hUSD`, `feesPaid24hUSD`                                                   |

```json theme={null}
{
  "filters": {
    "marketCap": { "gte": 10000 },
    "sellCount4": { "gte": 10 },
    "sniperCount": { "lte": 2 },
    "bundlerCount": { "equals": 0 }
  }
}
```

***

## Canonical Filter Field Families

Most metric families support these timeframes: `1min`, `5min`, `15min`, `1h`, `4h`, `6h`, `12h`, `24h`. Use the timeframe inside the camelCase field name, for example `volume1hUSD`, `trades15min`, or `organicVolumeBuy24hUSD`.

| Category              | Supported fields                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Price                 | `priceUSD`, `latestPrice`, `price1minAgo`, `price5minAgo`, `price1hAgo`, `price4hAgo`, `price6hAgo`, `price12hAgo`, `price24hAgo`, `priceToken`                                                                                                                                                                                                                                                          |
| ATH / ATL             | `athUSD`, `atlUSD`, `ath`, `atl`, `ath1h`, `ath4h`, `ath12h`, `ath24h`, `atl1h`, `atl4h`, `atl12h`, `atl24h`, `athDate`, `atlDate`                                                                                                                                                                                                                                                                       |
| Price change          | `priceChange1minPercentage`, `priceChange5minPercentage`, `priceChange1hPercentage`, `priceChange4hPercentage`, `priceChange6hPercentage`, `priceChange12hPercentage`, `priceChange24hPercentage`                                                                                                                                                                                                        |
| Market cap            | `marketCapUSD`, `marketCapDilutedUSD`, `latestMarketCap`                                                                                                                                                                                                                                                                                                                                                 |
| Volume                | `volume{timeframe}USD`, `volumeBuy{timeframe}USD`, `volumeSell{timeframe}USD`                                                                                                                                                                                                                                                                                                                            |
| Trades                | `trades{timeframe}`, `buys{timeframe}`, `sells{timeframe}`, `buyers{timeframe}`, `sellers{timeframe}`, `traders{timeframe}`                                                                                                                                                                                                                                                                              |
| Fees                  | `feesPaid{timeframe}USD`, `totalFeesPaidUSD`, `totalFeesPaidNativeRaw`, `baseFees5minUSD`, `baseFees1hUSD`, `baseFees4hUSD`, `baseFees12hUSD`, `baseFees24hUSD`, `builderTips5minUSD`, `builderTips1hUSD`, `builderTips4hUSD`, `builderTips12hUSD`, `builderTips24hUSD`, `feesToVolumeRatio24h`                                                                                                          |
| Organic stats         | `organicTrades{timeframe}`, `organicVolume{timeframe}USD`, `organicVolumeBuy{timeframe}USD`, `organicVolumeSell{timeframe}USD`, `organicBuys{timeframe}`, `organicSells{timeframe}`, `organicBuyers{timeframe}`, `organicSellers{timeframe}`, `organicTraders{timeframe}`                                                                                                                                |
| Trending              | `trendingScore1min`, `trendingScore5min`, `trendingScore15min`, `trendingScore1h`, `trendingScore4h`, `trendingScore6h`, `trendingScore12h`, `trendingScore24h`, `trendingIgnored`, `potentialScam`, `surgeScore`, `searchScore`                                                                                                                                                                         |
| Liquidity and supply  | `liquidityUSD`, `liquidity`, `liquidityMaxUSD`, `liquidityMax`, `approximateReserveUSD`, `approximateReserveToken`, `approximateReserveTokenRaw`, `liquidityBurnPercentage`, `totalSupply`, `circulatingSupply`                                                                                                                                                                                          |
| Holders               | `holdersCount`, `top10HoldingsPercentage`, `top50HoldingsPercentage`, `top100HoldingsPercentage`, `top200HoldingsPercentage`, `devHoldingsPercentage`, `insidersHoldingsPercentage`, `bundlersHoldingsPercentage`, `snipersHoldingsPercentage`, `proTradersHoldingsPercentage`, `freshTradersHoldingsPercentage`, `smartTradersHoldingsPercentage`, `lpHoldingsPercentage`, `contractHoldingsPercentage` |
| Trader categories     | `insidersCount`, `bundlersCount`, `snipersCount`, `freshTradersCount`, `proTradersCount`, `smartTradersCount`, `smartTradersBuys`, `freshTradersBuys`, `proTradersBuys`                                                                                                                                                                                                                                  |
| Bonding               | `bonded`, `bondingPercentage`, `bondingCurveAddress`, `preBondingFactory`, `bondedAt`, `migratedAt`                                                                                                                                                                                                                                                                                                      |
| Metadata              | `chainId`, `symbol`, `tokenSymbol`, `name`, `tokenName`, `decimals`, `logo`, `logoStored`, `rank`, `cexs`, `source`, `factory`, `sourceFactory`, `poolAddress`, `deployer`, `deployerMigrationsCount`, `deployerTokensCount`, `blockchain`, `tokenType`, `i18n`                                                                                                                                          |
| Timestamps            | `createdAt`, `latestTradeDate`, `bondedAt`, `migratedAt`, `athDate`, `atlDate`, `dexscreenerAdPaidDate`, `dexscreenerSocialPaidDate`, `dexscreenerBoostedDate`                                                                                                                                                                                                                                           |
| Age offsets           | `createdAtOffset`, `latestTradeDateOffset`, `bondedAtOffset`, `migratedAtOffset`, `athDateOffset`, `atlDateOffset`                                                                                                                                                                                                                                                                                       |
| Socials               | `twitter`, `telegram`, `website`, `others`, `twitterReusesCount`, `twitterRenameCount`, `twitterRenameHistory`                                                                                                                                                                                                                                                                                           |
| DexScreener           | `dexscreenerListed`, `dexscreenerHeader`, `dexscreenerAdPaid`, `dexscreenerSocialPaid`, `dexscreenerBoosted`, `dexscreenerBoostedAmount`, `dexscreenerAdPaidDate`, `dexscreenerSocialPaidDate`, `dexscreenerBoostedDate`, `dexscreenerPendingAt`                                                                                                                                                         |
| Livestream            | `liveStatus`, `liveThumbnail`, `livestreamTitle`, `liveReplyCount`                                                                                                                                                                                                                                                                                                                                       |
| Nested token security | `security.buyTax`, `security.sellTax`, `security.transferTax`, `security.noMintAuthority`, `security.isBlacklisted`, `security.balanceMutable`, `security.transferPausable`, `security.isHoneypot`, `security.hasHoneypotMechanism`, `security.frozen`                                                                                                                                                   |
| Market pool filters   | `pool.type`, `pool.factory`, `pool.bonded`, `pool.explicit`, `pool.createdAt`, `pool.sourceFactory`, `pool.bondingCurveAddress`, `pool.deployer`, `pool.token0Id`, `pool.token1Id`, `pool.baseId`, `pool.price`, `pool.athToken0`, `pool.atlToken0`, `pool.athToken1`, `pool.atlToken1`                                                                                                                  |
| Special filters       | `includeKeywords`, `excludeKeywords`, `pattern`, `minSocials`, `addressToExclude`, `filterQuotes`                                                                                                                                                                                                                                                                                                        |

<Note>
  Legacy Pulse-style aliases such as `marketCap`, `volumeUSD1h`, `volumeBuyUSD1h`, `volumeSellUSD1h`, `priceChangePercentage1h`, and `organicVolumeUSD1h` are still accepted for compatibility. New integrations should use the native fields above.
</Note>

***

# Token Mode Filters (mode: "token")

<Note>
  These filters apply when using `mode: "token"`. All field names use camelCase matching the `TokenDetailsOutput` schema.
</Note>

## Price Fields

| Field        | Type   | Description                |
| ------------ | ------ | -------------------------- |
| `priceUSD`   | number | Current price in USD       |
| `priceToken` | number | Price in quote token       |
| `athUSD`     | number | All-time high price in USD |
| `atlUSD`     | number | All-time low price in USD  |
| `athDate`    | Date   | Date when ATH was reached  |
| `atlDate`    | Date   | Date when ATL was reached  |

### Price Change Fields

| Field                       | Type   | Description                 |
| --------------------------- | ------ | --------------------------- |
| `priceChange1minPercentage` | number | Price change % in 1 minute  |
| `priceChange5minPercentage` | number | Price change % in 5 minutes |
| `priceChange1hPercentage`   | number | Price change % in 1 hour    |
| `priceChange4hPercentage`   | number | Price change % in 4 hours   |
| `priceChange6hPercentage`   | number | Price change % in 6 hours   |
| `priceChange12hPercentage`  | number | Price change % in 12 hours  |
| `priceChange24hPercentage`  | number | Price change % in 24 hours  |

## Market Cap Fields

| Field                 | Type   | Description               |
| --------------------- | ------ | ------------------------- |
| `marketCapUSD`        | number | Current market cap in USD |
| `marketCapDilutedUSD` | number | Fully diluted market cap  |

## Volume Fields

| Field            | Type   | Description                |
| ---------------- | ------ | -------------------------- |
| `volume1minUSD`  | number | Volume in 1 minute (USD)   |
| `volume5minUSD`  | number | Volume in 5 minutes (USD)  |
| `volume15minUSD` | number | Volume in 15 minutes (USD) |
| `volume1hUSD`    | number | Volume in 1 hour (USD)     |
| `volume4hUSD`    | number | Volume in 4 hours (USD)    |
| `volume6hUSD`    | number | Volume in 6 hours (USD)    |
| `volume12hUSD`   | number | Volume in 12 hours (USD)   |
| `volume24hUSD`   | number | Volume in 24 hours (USD)   |

### Volume Buy Fields

| Field               | Type   | Description                    |
| ------------------- | ------ | ------------------------------ |
| `volumeBuy1minUSD`  | number | Buy volume in 1 minute (USD)   |
| `volumeBuy5minUSD`  | number | Buy volume in 5 minutes (USD)  |
| `volumeBuy15minUSD` | number | Buy volume in 15 minutes (USD) |
| `volumeBuy1hUSD`    | number | Buy volume in 1 hour (USD)     |
| `volumeBuy4hUSD`    | number | Buy volume in 4 hours (USD)    |
| `volumeBuy6hUSD`    | number | Buy volume in 6 hours (USD)    |
| `volumeBuy12hUSD`   | number | Buy volume in 12 hours (USD)   |
| `volumeBuy24hUSD`   | number | Buy volume in 24 hours (USD)   |

### Volume Sell Fields

| Field                | Type   | Description                     |
| -------------------- | ------ | ------------------------------- |
| `volumeSell1minUSD`  | number | Sell volume in 1 minute (USD)   |
| `volumeSell5minUSD`  | number | Sell volume in 5 minutes (USD)  |
| `volumeSell15minUSD` | number | Sell volume in 15 minutes (USD) |
| `volumeSell1hUSD`    | number | Sell volume in 1 hour (USD)     |
| `volumeSell4hUSD`    | number | Sell volume in 4 hours (USD)    |
| `volumeSell6hUSD`    | number | Sell volume in 6 hours (USD)    |
| `volumeSell12hUSD`   | number | Sell volume in 12 hours (USD)   |
| `volumeSell24hUSD`   | number | Sell volume in 24 hours (USD)   |

## Trade Count Fields

### Total Trades

| Field         | Type   | Description                    |
| ------------- | ------ | ------------------------------ |
| `trades1min`  | number | Number of trades in 1 minute   |
| `trades5min`  | number | Number of trades in 5 minutes  |
| `trades15min` | number | Number of trades in 15 minutes |
| `trades1h`    | number | Number of trades in 1 hour     |
| `trades4h`    | number | Number of trades in 4 hours    |
| `trades6h`    | number | Number of trades in 6 hours    |
| `trades12h`   | number | Number of trades in 12 hours   |
| `trades24h`   | number | Number of trades in 24 hours   |

### Buy Transactions

| Field       | Type   | Description                    |
| ----------- | ------ | ------------------------------ |
| `buys1min`  | number | Buy transactions in 1 minute   |
| `buys5min`  | number | Buy transactions in 5 minutes  |
| `buys15min` | number | Buy transactions in 15 minutes |
| `buys1h`    | number | Buy transactions in 1 hour     |
| `buys4h`    | number | Buy transactions in 4 hours    |
| `buys6h`    | number | Buy transactions in 6 hours    |
| `buys12h`   | number | Buy transactions in 12 hours   |
| `buys24h`   | number | Buy transactions in 24 hours   |

### Sell Transactions

| Field        | Type   | Description                     |
| ------------ | ------ | ------------------------------- |
| `sells1min`  | number | Sell transactions in 1 minute   |
| `sells5min`  | number | Sell transactions in 5 minutes  |
| `sells15min` | number | Sell transactions in 15 minutes |
| `sells1h`    | number | Sell transactions in 1 hour     |
| `sells4h`    | number | Sell transactions in 4 hours    |
| `sells6h`    | number | Sell transactions in 6 hours    |
| `sells12h`   | number | Sell transactions in 12 hours   |
| `sells24h`   | number | Sell transactions in 24 hours   |

## Unique Participants

### Buyers

| Field         | Type   | Description                 |
| ------------- | ------ | --------------------------- |
| `buyers1min`  | number | Unique buyers in 1 minute   |
| `buyers5min`  | number | Unique buyers in 5 minutes  |
| `buyers15min` | number | Unique buyers in 15 minutes |
| `buyers1h`    | number | Unique buyers in 1 hour     |
| `buyers4h`    | number | Unique buyers in 4 hours    |
| `buyers6h`    | number | Unique buyers in 6 hours    |
| `buyers12h`   | number | Unique buyers in 12 hours   |
| `buyers24h`   | number | Unique buyers in 24 hours   |

### Sellers

| Field          | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| `sellers1min`  | number | Unique sellers in 1 minute   |
| `sellers5min`  | number | Unique sellers in 5 minutes  |
| `sellers15min` | number | Unique sellers in 15 minutes |
| `sellers1h`    | number | Unique sellers in 1 hour     |
| `sellers4h`    | number | Unique sellers in 4 hours    |
| `sellers6h`    | number | Unique sellers in 6 hours    |
| `sellers12h`   | number | Unique sellers in 12 hours   |
| `sellers24h`   | number | Unique sellers in 24 hours   |

### Traders (Both Bought and Sold)

| Field          | Type   | Description                  |
| -------------- | ------ | ---------------------------- |
| `traders1min`  | number | Unique traders in 1 minute   |
| `traders5min`  | number | Unique traders in 5 minutes  |
| `traders15min` | number | Unique traders in 15 minutes |
| `traders1h`    | number | Unique traders in 1 hour     |
| `traders4h`    | number | Unique traders in 4 hours    |
| `traders6h`    | number | Unique traders in 6 hours    |
| `traders12h`   | number | Unique traders in 12 hours   |
| `traders24h`   | number | Unique traders in 24 hours   |

## Organic Metrics (Excluding Bot Activity)

### Organic Trades

| Field                | Type   | Description                  |
| -------------------- | ------ | ---------------------------- |
| `organicTrades1min`  | number | Organic trades in 1 minute   |
| `organicTrades5min`  | number | Organic trades in 5 minutes  |
| `organicTrades15min` | number | Organic trades in 15 minutes |
| `organicTrades1h`    | number | Organic trades in 1 hour     |
| `organicTrades4h`    | number | Organic trades in 4 hours    |
| `organicTrades6h`    | number | Organic trades in 6 hours    |
| `organicTrades12h`   | number | Organic trades in 12 hours   |
| `organicTrades24h`   | number | Organic trades in 24 hours   |

### Organic Volume

| Field                   | Type   | Description                  |
| ----------------------- | ------ | ---------------------------- |
| `organicVolume1minUSD`  | number | Organic volume in 1 minute   |
| `organicVolume5minUSD`  | number | Organic volume in 5 minutes  |
| `organicVolume15minUSD` | number | Organic volume in 15 minutes |
| `organicVolume1hUSD`    | number | Organic volume in 1 hour     |
| `organicVolume4hUSD`    | number | Organic volume in 4 hours    |
| `organicVolume6hUSD`    | number | Organic volume in 6 hours    |
| `organicVolume12hUSD`   | number | Organic volume in 12 hours   |
| `organicVolume24hUSD`   | number | Organic volume in 24 hours   |

### Organic Buy/Sell Volume

| Field                      | Type   | Description                     |
| -------------------------- | ------ | ------------------------------- |
| `organicVolumeBuy1minUSD`  | number | Organic buy volume in 1 minute  |
| `organicVolumeBuy1hUSD`    | number | Organic buy volume in 1 hour    |
| `organicVolumeBuy24hUSD`   | number | Organic buy volume in 24 hours  |
| `organicVolumeSell1minUSD` | number | Organic sell volume in 1 minute |
| `organicVolumeSell1hUSD`   | number | Organic sell volume in 1 hour   |
| `organicVolumeSell24hUSD`  | number | Organic sell volume in 24 hours |
| ...                        | ...    | All timeframes available        |

### Organic Participants

| Field              | Type   | Description               |
| ------------------ | ------ | ------------------------- |
| `organicBuyers1h`  | number | Organic buyers in 1 hour  |
| `organicSellers1h` | number | Organic sellers in 1 hour |
| `organicTraders1h` | number | Organic traders in 1 hour |
| ...                | ...    | All timeframes available  |

### Organic Buy/Sell Counts

| Field            | Type   | Description                |
| ---------------- | ------ | -------------------------- |
| `organicBuys1h`  | number | Organic buy txs in 1 hour  |
| `organicSells1h` | number | Organic sell txs in 1 hour |
| ...              | ...    | All timeframes available   |

## Trending Score Fields

| Field                | Type   | Description                       |
| -------------------- | ------ | --------------------------------- |
| `trendingScore1min`  | number | Trending score (1 minute window)  |
| `trendingScore5min`  | number | Trending score (5 minute window)  |
| `trendingScore15min` | number | Trending score (15 minute window) |
| `trendingScore1h`    | number | Trending score (1 hour window)    |
| `trendingScore4h`    | number | Trending score (4 hour window)    |
| `trendingScore6h`    | number | Trending score (6 hour window)    |
| `trendingScore12h`   | number | Trending score (12 hour window)   |
| `trendingScore24h`   | number | Trending score (24 hour window)   |

## Fees Paid Fields

| Field                                                                                                  | Type   | Description                         |
| ------------------------------------------------------------------------------------------------------ | ------ | ----------------------------------- |
| `feesPaid1minUSD`                                                                                      | number | Fees paid in 1 minute               |
| `feesPaid5minUSD`                                                                                      | number | Fees paid in 5 minutes              |
| `feesPaid15minUSD`                                                                                     | number | Fees paid in 15 minutes             |
| `feesPaid1hUSD`                                                                                        | number | Fees paid in 1 hour                 |
| `feesPaid4hUSD`                                                                                        | number | Fees paid in 4 hours                |
| `feesPaid6hUSD`                                                                                        | number | Fees paid in 6 hours                |
| `feesPaid12hUSD`                                                                                       | number | Fees paid in 12 hours               |
| `feesPaid24hUSD`                                                                                       | number | Fees paid in 24 hours               |
| `totalFeesPaidUSD`                                                                                     | number | Total fees paid all time            |
| `totalFeesPaidNativeRaw`                                                                               | string | Total native fees paid as raw units |
| `baseFees5minUSD`, `baseFees1hUSD`, `baseFees4hUSD`, `baseFees12hUSD`, `baseFees24hUSD`                | number | Base/gas fees in USD                |
| `builderTips5minUSD`, `builderTips1hUSD`, `builderTips4hUSD`, `builderTips12hUSD`, `builderTips24hUSD` | number | Builder tips / MEV fees in USD      |
| `feesToVolumeRatio24h`                                                                                 | number | 24h fees divided by 24h volume      |

## Holdings Analysis Fields

| Field                            | Type   | Description                    |
| -------------------------------- | ------ | ------------------------------ |
| `holdersCount`                   | number | Total number of holders        |
| `top10HoldingsPercentage`        | number | % held by top 10 holders       |
| `top50HoldingsPercentage`        | number | % held by top 50 holders       |
| `top100HoldingsPercentage`       | number | % held by top 100 holders      |
| `top200HoldingsPercentage`       | number | % held by top 200 holders      |
| `devHoldingsPercentage`          | number | % held by developers           |
| `insidersHoldingsPercentage`     | number | % held by insiders             |
| `bundlersHoldingsPercentage`     | number | % held by bundlers             |
| `snipersHoldingsPercentage`      | number | % held by snipers              |
| `proTradersHoldingsPercentage`   | number | % held by pro traders          |
| `freshTradersHoldingsPercentage` | number | % held by fresh traders        |
| `smartTradersHoldingsPercentage` | number | % held by smart traders        |
| `lpHoldingsPercentage`           | number | % held by LP-related addresses |
| `contractHoldingsPercentage`     | number | % held by contract addresses   |

## Trader Categories

### Trader Counts

| Field               | Type   | Description               |
| ------------------- | ------ | ------------------------- |
| `insidersCount`     | number | Number of insider traders |
| `bundlersCount`     | number | Number of bundler traders |
| `snipersCount`      | number | Number of sniper traders  |
| `freshTradersCount` | number | Number of fresh traders   |
| `proTradersCount`   | number | Number of pro traders     |
| `smartTradersCount` | number | Number of smart traders   |

### Trader Activity

| Field              | Type   | Description           |
| ------------------ | ------ | --------------------- |
| `smartTradersBuys` | number | Buys by smart traders |
| `freshTradersBuys` | number | Buys by fresh traders |
| `proTradersBuys`   | number | Buys by pro traders   |

## Liquidity Fields

| Field                        | Type   | Description                            |
| ---------------------------- | ------ | -------------------------------------- |
| `liquidityUSD`               | number | Current liquidity in USD               |
| `liquidity`                  | number | Current liquidity alias                |
| `liquidityMaxUSD`            | number | Maximum liquidity reached              |
| `liquidityMax`               | number | Maximum liquidity alias                |
| `approximateReserveUSD`      | number | Approximate reserve in USD             |
| `approximateReserveToken`    | number | Approximate reserve in tokens          |
| `approximateReserveTokenRaw` | string | Approximate reserve in raw token units |
| `liquidityBurnPercentage`    | number | Burned LP liquidity percentage         |

## Bonding Fields

| Field                 | Type    | Description                    |
| --------------------- | ------- | ------------------------------ |
| `bonded`              | boolean | Whether token is bonded        |
| `bondingPercentage`   | number  | Bonding curve completion %     |
| `bondingCurveAddress` | string  | Bonding curve contract address |
| `preBondingFactory`   | string  | Factory before bonding         |
| `bondedAt`            | Date    | When token bonded              |

## Token Metadata Fields

| Field                     | Type    | Description                                |
| ------------------------- | ------- | ------------------------------------------ |
| `symbol`                  | string  | Token symbol                               |
| `tokenSymbol`             | string  | Token symbol alias                         |
| `name`                    | string  | Token name                                 |
| `tokenName`               | string  | Token name alias                           |
| `decimals`                | number  | Token decimals                             |
| `logo`                    | string  | Token logo URL                             |
| `logoStored`              | boolean | Logo is stored by Mobula                   |
| `deployer`                | string  | Deployer address                           |
| `deployerMigrationsCount` | number  | Deployer's migration count                 |
| `deployerTokensCount`     | number  | Deployer's total tokens                    |
| `rank`                    | number  | Token rank                                 |
| `cexs`                    | string  | Centralized exchange availability metadata |
| `totalSupply`             | number  | Total supply                               |
| `circulatingSupply`       | number  | Circulating supply                         |

## Source & Factory Fields

| Field           | Type   | Description                                    |
| --------------- | ------ | ---------------------------------------------- |
| `source`        | string | Source launchpad (pumpfun, moonshot-evm, etc.) |
| `factory`       | string | Factory address                                |
| `sourceFactory` | string | Source factory address                         |
| `poolAddress`   | string | Primary pool address                           |
| `blockchain`    | string | Blockchain name                                |
| `tokenType`     | string | Token type                                     |

## Timestamp Fields

| Field                       | Type | Description                     |
| --------------------------- | ---- | ------------------------------- |
| `createdAt`                 | Date | Token creation date             |
| `latestTradeDate`           | Date | Last trade timestamp            |
| `bondedAt`                  | Date | Bonding completion date         |
| `migratedAt`                | Date | Migration date                  |
| `athDate`                   | Date | ATH timestamp                   |
| `atlDate`                   | Date | ATL timestamp                   |
| `dexscreenerAdPaidDate`     | Date | DexScreener ad payment date     |
| `dexscreenerSocialPaidDate` | Date | DexScreener social payment date |
| `dexscreenerBoostedDate`    | Date | DexScreener boost date          |

## Social Fields

| Field                  | Type   | Description                    |
| ---------------------- | ------ | ------------------------------ |
| `twitter`              | string | Twitter/X URL or handle        |
| `telegram`             | string | Telegram URL                   |
| `website`              | string | Website URL                    |
| `others`               | string | Other social links             |
| `twitterReusesCount`   | number | Times Twitter handle reused    |
| `twitterRenameCount`   | number | Twitter rename count           |
| `twitterRenameHistory` | object | Twitter rename history payload |

## DexScreener Fields

| Field                       | Type    | Description                     |
| --------------------------- | ------- | ------------------------------- |
| `dexscreenerListed`         | boolean | Listed on DexScreener           |
| `dexscreenerHeader`         | string  | DexScreener header image        |
| `dexscreenerAdPaid`         | boolean | Paid for DexScreener ad         |
| `dexscreenerAdPaidDate`     | Date    | DexScreener ad payment date     |
| `dexscreenerSocialPaid`     | boolean | Paid for social verification    |
| `dexscreenerSocialPaidDate` | Date    | DexScreener social payment date |
| `dexscreenerBoosted`        | boolean | DexScreener boosted             |
| `dexscreenerBoostedAmount`  | number  | Boost amount                    |
| `dexscreenerBoostedDate`    | Date    | DexScreener boost date          |
| `dexscreenerPendingAt`      | Date    | DexScreener pending date        |

## Livestream Fields

| Field             | Type   | Description                                         |
| ----------------- | ------ | --------------------------------------------------- |
| `liveStatus`      | string | Livestream status ("pump\_live", "pump\_live\_end") |
| `liveThumbnail`   | string | Livestream thumbnail URL                            |
| `livestreamTitle` | string | Livestream title                                    |
| `liveReplyCount`  | number | Livestream reply count                              |

## Security Fields

Filter by security analysis using nested object:

```json theme={null}
{
  "filters": {
    "security": {
      "buyTax": { "lte": 5 },
      "sellTax": { "lte": 10 },
      "noMintAuthority": { "equals": true },
      "isBlacklisted": { "equals": false },
      "balanceMutable": { "equals": false },
      "transferPausable": { "equals": false }
    }
  }
}
```

| Field                           | Type             | Description                      |
| ------------------------------- | ---------------- | -------------------------------- |
| `security.buyTax`               | number           | Buy tax percentage               |
| `security.sellTax`              | number           | Sell tax percentage              |
| `security.transferTax`          | number \| string | Transfer tax percentage          |
| `security.isBlacklisted`        | boolean          | Has blacklist functionality      |
| `security.balanceMutable`       | boolean          | Balances can be modified         |
| `security.noMintAuthority`      | boolean          | Mint authority revoked (Solana)  |
| `security.transferPausable`     | boolean          | Transfers can be paused          |
| `security.isHoneypot`           | boolean          | Token is honeypot                |
| `security.hasHoneypotMechanism` | boolean          | Honeypot-like mechanism detected |
| `security.frozen`               | boolean          | Token or token account is frozen |

***

# Market Mode Filters (mode: "market")

<Note>
  Market mode includes all token filters above, plus pool-specific filters. Pool filters are nested under a `pool` object.
</Note>

## Pool-Specific Filters

```json theme={null}
{
  "mode": "market",
  "views": {
    "my-market-view": {
      "sortBy": "volume1hUSD",
      "sortOrder": "desc",
      "limit": 50,
      "filters": {
        "marketCapUSD": { "gte": 10000 },
        "pool": {
          "type": { "in": ["pumpfun", "raydium-v4"] },
          "factory": { "equals": "uniswap-v2" },
          "bonded": { "equals": false }
        }
      }
    }
  }
}
```

### Pool Fields

| Field                      | Type    | Description                                       |
| -------------------------- | ------- | ------------------------------------------------- |
| `pool.type`                | string  | Pool type (pumpfun, raydium-v4, uniswap-v2, etc.) |
| `pool.factory`             | string  | Factory name or address                           |
| `pool.bonded`              | boolean | Pool is bonded                                    |
| `pool.explicit`            | boolean | Pool is explicit                                  |
| `pool.createdAt`           | Date    | Pool creation date                                |
| `pool.sourceFactory`       | string  | Bonding curve factory                             |
| `pool.bondingCurveAddress` | string  | Bonding curve address                             |
| `pool.deployer`            | string  | Pool deployer address                             |
| `pool.token0Id`            | number  | Token0 internal ID                                |
| `pool.token1Id`            | number  | Token1 internal ID                                |
| `pool.baseId`              | number  | Base token internal ID                            |
| `pool.price`               | number  | Pool price                                        |
| `pool.athToken0`           | number  | Token0 ATH in pool terms                          |
| `pool.atlToken0`           | number  | Token0 ATL in pool terms                          |
| `pool.athToken1`           | number  | Token1 ATH in pool terms                          |
| `pool.atlToken1`           | number  | Token1 ATL in pool terms                          |

***

# Special Filters

## Keyword Filters

Search by token name or symbol:

```json theme={null}
{
  "filters": {
    "includeKeywords": ["meme", "doge", "cat", "pepe"],
    "excludeKeywords": ["scam", "fake", "test", "rug"]
  }
}
```

| Field             | Type      | Description                   |
| ----------------- | --------- | ----------------------------- |
| `includeKeywords` | string\[] | Must contain any of these     |
| `excludeKeywords` | string\[] | Must NOT contain any of these |

## Pattern Filter

```json theme={null}
{
  "filters": {
    "pattern": "doge"
  }
}
```

| Field     | Type   | Description                    |
| --------- | ------ | ------------------------------ |
| `pattern` | string | Search pattern for name/symbol |

## Social Requirements

```json theme={null}
{
  "filters": {
    "minSocials": 2
  }
}
```

| Field        | Type   | Description                |
| ------------ | ------ | -------------------------- |
| `minSocials` | number | Minimum social links (1-3) |

## Address Exclusions

```json theme={null}
{
  "filters": {
    "addressToExclude": ["TokenAddress1...", "TokenAddress2..."]
  }
}
```

| Field              | Type      | Description                |
| ------------------ | --------- | -------------------------- |
| `addressToExclude` | string\[] | Token addresses to exclude |

## Quote Token Filter

```json theme={null}
{
  "filters": {
    "filterQuotes": true
  }
}
```

| Field          | Type    | Description                                             |
| -------------- | ------- | ------------------------------------------------------- |
| `filterQuotes` | boolean | Exclude known quote/base tokens from token-mode results |

## Timeframe Offset Filter

Filter by age relative to now:

```json theme={null}
{
  "filters": {
    "createdAtOffset": {
      "gte": 1800,
      "lte": 7200
    }
  }
}
```

| Field                   | Type   | Description                          |
| ----------------------- | ------ | ------------------------------------ |
| `createdAtOffset`       | object | Age of token creation in seconds     |
| `latestTradeDateOffset` | object | Age of latest trade in seconds       |
| `bondedAtOffset`        | object | Age of bonding completion in seconds |
| `migratedAtOffset`      | object | Age of migration in seconds          |
| `athDateOffset`         | object | Age of ATH timestamp in seconds      |
| `atlDateOffset`         | object | Age of ATL timestamp in seconds      |

Offset operators use age in seconds: `gte` means older than the value, `lte` means younger than the value.

**Example**: Tokens created between 30 minutes and 2 hours ago:

* `gte: 1800` (30 min × 60 sec)
* `lte: 7200` (2 hours × 60 sec × 60 min)

***

# Filter Examples

## High-Volume New Tokens

```json theme={null}
{
  "mode": "token",
  "views": {
    "high-volume-new": {
      "sortBy": "volume1hUSD",
      "sortOrder": "desc",
      "limit": 50,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "source": { "in": ["pumpfun"] },
        "volume1hUSD": { "gte": 5000 },
        "marketCapUSD": { "gte": 10000, "lte": 500000 },
        "bonded": { "equals": false },
        "holdersCount": { "gte": 50 }
      }
    }
  }
}
```

## Safe Tokens with Low Concentration

```json theme={null}
{
  "mode": "token",
  "views": {
    "safe-distributed": {
      "sortBy": "trendingScore1h",
      "sortOrder": "desc",
      "limit": 30,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "security": {
          "noMintAuthority": { "equals": true },
          "isBlacklisted": { "equals": false }
        },
        "top10HoldingsPercentage": { "lte": 25 },
        "devHoldingsPercentage": { "lte": 5 },
        "snipersHoldingsPercentage": { "lte": 3 },
        "holdersCount": { "gte": 100 }
      }
    }
  }
}
```

## Trending Meme Tokens

```json theme={null}
{
  "mode": "token",
  "views": {
    "trending-memes": {
      "sortBy": "priceChange1hPercentage",
      "sortOrder": "desc",
      "limit": 25,
      "filters": {
        "chainId": { "in": ["solana:solana", "evm:8453"] },
        "source": { "in": ["pumpfun", "moonshot-evm"] },
        "includeKeywords": ["meme", "doge", "pepe", "cat", "shib"],
        "excludeKeywords": ["scam", "rug"],
        "priceChange1hPercentage": { "gte": 10 },
        "volume1hUSD": { "gte": 1000 },
        "minSocials": 1
      }
    }
  }
}
```

## Whale Buy Pressure

```json theme={null}
{
  "mode": "token",
  "views": {
    "whale-buying": {
      "sortBy": "volumeBuy1hUSD",
      "sortOrder": "desc",
      "limit": 30,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "volumeBuy1hUSD": { "gte": 10000 },
        "volumeSell1hUSD": { "lte": 5000 },
        "proTradersCount": { "gte": 3 },
        "smartTradersBuys": { "gte": 2 }
      }
    }
  }
}
```

## Recently Bonded Tokens

```json theme={null}
{
  "mode": "token",
  "views": {
    "just-bonded": {
      "sortBy": "bondedAt",
      "sortOrder": "desc",
      "limit": 50,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "source": { "in": ["pumpfun"] },
        "bonded": { "equals": true },
        "volume1hUSD": { "gte": 500 },
        "liquidityUSD": { "gte": 10000 }
      }
    }
  }
}
```

## Low Tax Tokens

```json theme={null}
{
  "mode": "token",
  "views": {
    "low-tax": {
      "sortBy": "volumeUSD24h",
      "sortOrder": "desc",
      "limit": 40,
      "filters": {
        "chainId": { "in": ["evm:8453", "evm:1"] },
        "security": {
          "buyTax": { "lte": 2 },
          "sellTax": { "lte": 5 },
          "isHoneypot": { "equals": false }
        },
        "volumeUSD24h": { "gte": 10000 }
      }
    }
  }
}
```

## Fresh Tokens (Last 30 Minutes)

```json theme={null}
{
  "mode": "token",
  "views": {
    "just-launched": {
      "sortBy": "createdAt",
      "sortOrder": "desc",
      "limit": 50,
      "filters": {
        "chainId": { "in": ["solana:solana"] },
        "source": { "in": ["pumpfun"] },
        "createdAtOffset": { "lte": 1800 },
        "volumeUSD5min": { "gte": 100 }
      }
    }
  }
}
```

***

# Mapping from Pulse V2 to Token Filters

If migrating from Pulse V2, here's the field name mapping:

| Pulse V2 (snake\_case)         | Token Filters (camelCase)    |
| ------------------------------ | ---------------------------- |
| `market_cap`                   | `marketCapUSD`               |
| `volume_1h`                    | `volume1hUSD`                |
| `volume_buy_1h`                | `volumeBuy1hUSD`             |
| `volume_sell_1h`               | `volumeSell1hUSD`            |
| `price_change_1h`              | `priceChange1hPercentage`    |
| `trades_1h`                    | `trades1h`                   |
| `buys_1h`                      | `buys1h`                     |
| `sells_1h`                     | `sells1h`                    |
| `buyers_1h`                    | `buyers1h`                   |
| `sellers_1h`                   | `sellers1h`                  |
| `traders_1h`                   | `traders1h`                  |
| `fees_paid_1h`                 | `feesPaid1hUSD`              |
| `holders_count`                | `holdersCount`               |
| `top_10_holdings_percentage`   | `top10HoldingsPercentage`    |
| `dev_holdings_percentage`      | `devHoldingsPercentage`      |
| `insiders_holdings_percentage` | `insidersHoldingsPercentage` |
| `snipers_holdings_percentage`  | `snipersHoldingsPercentage`  |
| `bonding_percentage`           | `bondingPercentage`          |
| `created_at`                   | `createdAt`                  |
| `latest_trade_date`            | `latestTradeDate`            |
| `bonded_at`                    | `bondedAt`                   |
| `organic_trades_1h`            | `organicTrades1h`            |
| `organic_volume_1h`            | `organicVolume1hUSD`         |
| `trending_score_1h`            | `trendingScore1h`            |

<Tip>
  See the [Migration Guide](/indexing-stream/stream/websocket/token-filters-migration) for complete migration instructions.
</Tip>
