Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.codex.io/llms.txt

Use this file to discover all available pages before exploring further.

Returns

DetailedPairStats
DetailedPairStats
See DetailedPairStats

Arguments

pairAddress
String!
required
The contract address of the pair.
networkId
Int!
required
The network ID the pair is deployed on.
tokenOfInterest
TokenOfInterest
The token of interest used to calculate token-specific stats for the pair. Can be token0 or token1. See TokenOfInterest
timestamp
Int
The unix timestamp for the stats. Defaults to current.
durations
[DetailedPairStatsDuration]
The list of durations to get detailed pair stats for. See DetailedPairStatsDuration
bucketCount
Int
The number of aggregated values to receive. Note: Each duration has predetermined bucket sizes. The first n-1 buckets are historical. The last bucket is a snapshot of current data. duration day1: 6 buckets (4 hours each) plus 1 partial bucket duration hour12: 12 buckets (1 hour each) plus 1 partial bucket duration hour4: 8 buckets (30 min each) plus 1 partial bucket duration hour1: 12 buckets (5 min each) plus 1 partial bucket duration min5: 5 buckets (1 min each) plus 1 partial bucket For example, requesting 11 buckets for a min5 duration will return the last 10 minutes worth of data plus a snapshot for the current minute.
statsType
TokenPairStatisticsType
The type of statistics returned. Can be FILTERED or UNFILTERED. Default is UNFILTERED. See TokenPairStatisticsType

Example

Test this query in the Explorer →
{
  getDetailedPairStats(
    pairAddress: "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640"
    networkId: 1
    tokenOfInterest: token0
    durations: [min5, hour1, hour4, hour12, day1]
  ) {
    pairAddress
    networkId
    tokenOfInterest
    statsType
    lastTransaction
    pair {
      token0
      token1
      token0Data {
        address
        name
        symbol
      }
      token1Data {
        address
        name
        symbol
      }
    }
    stats_hour1 {
      statsUsd {
        volume {
          currentValue
          previousValue
          change
        }
        buyVolume {
          currentValue
          previousValue
          change
        }
        sellVolume {
          currentValue
          previousValue
          change
        }
      }
      statsNonCurrency {
        transactions {
          currentValue
          previousValue
          change
        }
        buyers {
          currentValue
          previousValue
          change
        }
        sellers {
          currentValue
          previousValue
          change
        }
      }
    }
  }
}

Usage Guidelines

  • Query using pairAddress and networkId (not the combined pair ID format)
  • Use tokenOfInterest (token0 or token1) to specify which token’s perspective to use for buy/sell calculations
  • Use durations array to request specific time windows: min5, min15, hour1, hour4, hour12, day1, week1, day30
  • Stats are returned in separate fields like stats_hour1, stats_day1, etc. based on requested durations
  • statsUsd contains USD-denominated metrics (volume, buyVolume, sellVolume)
  • statsNonCurrency contains count metrics (transactions, buyers, sellers, buys, sells)
  • Each metric includes currentValue, previousValue, and change (percent change in decimal format)
  • Use buckets array within each metric for granular time-series data

Troubleshooting Tips

tokenOfInterest determines the perspective for buy/sell classification. If set to token1, a “buy” means buying token1 (selling token0), and vice versa. This affects buyVolume, sellVolume, buyers, and sellers metrics.
FILTERED stats exclude suspected bot/MEV activity to show organic trading. UNFILTERED includes all transactions. Use statsType in the response to see which type was returned.
Each metric includes a buckets array with values for sub-intervals within the duration. For example, stats_hour1 might have 12 buckets of 5 minutes each. Use the timestamps array to map bucket indices to time ranges.
The change field requires both currentValue and previousValue to calculate. For very new pairs or time windows with no previous data, change may be null.
Use the timestamp parameter to query stats as of a specific point in time. By default, stats are returned for the current time.
getDetailedPairStats is the most accurate source of historical pool stats — pass the pairAddress, networkId, and the durations you need (min5, hour1, day1, etc.). getBars is also useful for OHLCV-style time series. Note that getTokenPrices returns a weighted price across all of a token’s pools — individual pool prices can differ.
  • Discover Tokens: Build token discovery pages with trending data, filters, and search