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

# Update Pairs Stream

The Update Pairs stream provides real-time updates on the prices, volumes, market cap and liquidity of <strong> one or many token pairs</strong>. This documentation follows our standard streaming API structure. The `pair_addresses` input is limited to a <strong>maximum of 5 addresses</strong> per subscription.

<CardGroup cols={2}>
  <Card title="Credit Cost"> 1 per minute </Card>

  <Card title="Supported Chains">
    * `BASE_MAINNET`
    * `BSC_MAINNET`
    * `ETH_MAINNET`
    * `HYPEREVM_MAINNET`
    * `MEGAETH_MAINNET`
    * `MONAD_MAINNET`
    * `POLYGON_MAINNET`
    * `ROBINHOOD_MAINNET`
    * `SOLANA_MAINNET`
  </Card>
</CardGroup>

<Tip>
  Estimate your monthly cost for this API using the [Pricing Calculator](/pricing-calculator?endpoint=%2Fapi-reference%2Fstreaming-api%2Fsubscriptions%2Fupdate-pairs-stream).
</Tip>

## Parameters

<ParamField body="chain_name" type="enum" required>
  Blockchain network to filter events

  Type: [`ChainName`](/api-reference/streaming-api/types/chain-name)
</ParamField>

<ParamField body="pair_addresses" type="array<string>" required>
  Array of pair addresses on supported DEXes and chains to track
</ParamField>

## Subscription

You can subscribe to the `updatePairs` endpoint to receive the events.

```graphql theme={null}
subscription {
  updatePairs(
    chain_name: BASE_MAINNET
    pair_addresses: [
      "0x9c087Eb773291e50CF6c6a90ef0F4500e349B903"
      "0x4b0Aaf3EBb163dd45F663b38b6d93f6093EBC2d3"
    ]
  ) {
    trader
    liquidity
    pair_address
    base_token {
      contract_name
      contract_address
      contract_decimals
      contract_ticker_symbol
    }
    last_5m {
      volume {
        previous_value
        pct_change
        current_value
      }
      unique_sellers {
        previous_value
        pct_change
        current_value
      }
      sell_count {
        previous_value
        pct_change
        current_value
      }
      price {
        previous_value
        pct_change
        current_value
      }
      buy_count {
        previous_value
        pct_change
        current_value
      }
      sell_volume {
        previous_value
        pct_change
        current_value
      }
      volume_usd {
        previous_value
        pct_change
        current_value
      }
      buy_volume {
        previous_value
        pct_change
        current_value
      }
      swap_count {
        previous_value
        pct_change
        current_value
      }
      unique_buyers {
        previous_value
        pct_change
        current_value
      }
    }
    last_6hr {
      volume {
        previous_value
        pct_change
        current_value
      }
      unique_sellers {
        previous_value
        pct_change
        current_value
      }
      sell_count {
        previous_value
        pct_change
        current_value
      }
      price {
        previous_value
        pct_change
        current_value
      }
      buy_count {
        previous_value
        pct_change
        current_value
      }
      sell_volume {
        previous_value
        pct_change
        current_value
      }
      volume_usd {
        previous_value
        pct_change
        current_value
      }
      buy_volume {
        previous_value
        pct_change
        current_value
      }
      swap_count {
        previous_value
        pct_change
        current_value
      }
      unique_buyers {
        previous_value
        pct_change
        current_value
      }
    }
    market_cap
    quote_rate
    last_24hr {
      volume {
        previous_value
        pct_change
        current_value
      }
      unique_sellers {
        previous_value
        pct_change
        current_value
      }
      sell_count {
        previous_value
        pct_change
        current_value
      }
      price {
        previous_value
        pct_change
        current_value
      }
      buy_count {
        previous_value
        pct_change
        current_value
      }
      sell_volume {
        previous_value
        pct_change
        current_value
      }
      volume_usd {
        previous_value
        pct_change
        current_value
      }
      buy_volume {
        previous_value
        pct_change
        current_value
      }
      swap_count {
        previous_value
        pct_change
        current_value
      }
      unique_buyers {
        previous_value
        pct_change
        current_value
      }
    }
    last_1hr {
      volume {
        previous_value
        pct_change
        current_value
      }
      unique_sellers {
        previous_value
        pct_change
        current_value
      }
      sell_count {
        previous_value
        pct_change
        current_value
      }
      price {
        previous_value
        pct_change
        current_value
      }
      buy_count {
        previous_value
        pct_change
        current_value
      }
      sell_volume {
        previous_value
        pct_change
        current_value
      }
      volume_usd {
        previous_value
        pct_change
        current_value
      }
      buy_volume {
        previous_value
        pct_change
        current_value
      }
      swap_count {
        previous_value
        pct_change
        current_value
      }
      unique_buyers {
        previous_value
        pct_change
        current_value
      }
    }
    quote_rate_usd
    sender
    quote_token {
      contract_name
      contract_address
      contract_decimals
      contract_ticker_symbol
    }
    id
    chain_name
    direction
    timestamp
  }
}
```

## Response Format

Here's an example of the response data structure:

```json theme={null}
{
  "data": {
    "updatePairs": {
      "chain_name": "BASE_MAINNET",
      "pair_address": "0x9c087Eb773291e50CF6c6a90ef0F4500e349B903",
      "timestamp": "2025-08-13T12:34:56Z",
      "quote_rate": 0.0002962,
      "quote_rate_usd": 1.39,
      "market_cap": 1250000.50,
      "liquidity": 850000.25,
      "base_token": {
        "contract_name": "Virtual",
        "contract_ticker_symbol": "VIRTUAL",
        "contract_address": "0x0b3e328455c4059EEb9e3f84b5543F74E24e7E1b",
        "contract_decimals": 18
      },
      "quote_token": {
        "contract_name": "Wrapped Ether",
        "contract_ticker_symbol": "WETH",
        "contract_address": "0x4200000000000000000000000000000000000006",
        "contract_decimals": 18
      },
      "last_5m": {
        "price": {
          "current_value": 1.39,
          "previous_value": 1.37,
          "pct_change": 1.46
        },
        "swap_count": {
          "current_value": 10,
          "previous_value": 8,
          "pct_change": 25.0
        },
        "volume_usd": {
          "current_value": 975.52,
          "previous_value": 820.10,
          "pct_change": 18.95
        }
      },
      "last_1hr": {
        "price": {
          "current_value": 1.39,
          "previous_value": 1.36,
          "pct_change": 2.21
        },
        "swap_count": {
          "current_value": 100,
          "previous_value": 85,
          "pct_change": 17.65
        },
        "volume_usd": {
          "current_value": 12500.00,
          "previous_value": 10200.00,
          "pct_change": 22.55
        }
      }
    }
  }
}
```

### Field Descriptions

<ResponseField name="trader" type="string">
  Address of the trader who initiated the swap
</ResponseField>

<ResponseField name="liquidity" type="float">
  Total liquidity in the pool
</ResponseField>

<ResponseField name="pair_address" type="string">
  The address of the DEX pair
</ResponseField>

<ResponseField name="base_token" type="object">
  Information about the base token in the pair

  Type: [`TokenContractMetadata`](/api-reference/streaming-api/types/token-contract-metadata)

  <Expandable title="properties">
    <ResponseField name="contract_name" type="string">
      Name of the token contract
    </ResponseField>

    <ResponseField name="contract_address" type="string">
      Address of the token contract
    </ResponseField>

    <ResponseField name="contract_decimals" type="int">
      Number of decimal places for the token
    </ResponseField>

    <ResponseField name="contract_ticker_symbol" type="string">
      Ticker symbol of the token
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="last_5m" type="object">
  Aggregated trading metrics for the last 5 minutes

  Type: [`TimeframeMetrics`](/api-reference/streaming-api/types/timeframe-metrics)

  <Expandable title="properties">
    <ResponseField name="volume" type="object">
      Total volume in native/quote token (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_sellers" type="object">
      Number of unique seller addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_count" type="object">
      Number of sell transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="price" type="object">
      Price: current\_value = current price, previous\_value = price at window start

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_count" type="object">
      Number of buy transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_volume" type="object">
      Total sell volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="volume_usd" type="object">
      Total volume in USD (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_volume" type="object">
      Total buy volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="swap_count" type="object">
      Total number of swaps

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_buyers" type="object">
      Number of unique buyer addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="last_6hr" type="object">
  Aggregated trading metrics for the last 6 hours

  Type: [`TimeframeMetrics`](/api-reference/streaming-api/types/timeframe-metrics)

  <Expandable title="properties">
    <ResponseField name="volume" type="object">
      Total volume in native/quote token (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_sellers" type="object">
      Number of unique seller addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_count" type="object">
      Number of sell transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="price" type="object">
      Price: current\_value = current price, previous\_value = price at window start

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_count" type="object">
      Number of buy transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_volume" type="object">
      Total sell volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="volume_usd" type="object">
      Total volume in USD (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_volume" type="object">
      Total buy volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="swap_count" type="object">
      Total number of swaps

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_buyers" type="object">
      Number of unique buyer addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="market_cap" type="float">
  Market capitalization of the token pair
</ResponseField>

<ResponseField name="quote_rate" type="float">
  Exchange rate between base and quote tokens
</ResponseField>

<ResponseField name="last_24hr" type="object">
  Aggregated trading metrics for the last 24 hours

  Type: [`TimeframeMetrics`](/api-reference/streaming-api/types/timeframe-metrics)

  <Expandable title="properties">
    <ResponseField name="volume" type="object">
      Total volume in native/quote token (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_sellers" type="object">
      Number of unique seller addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_count" type="object">
      Number of sell transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="price" type="object">
      Price: current\_value = current price, previous\_value = price at window start

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_count" type="object">
      Number of buy transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_volume" type="object">
      Total sell volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="volume_usd" type="object">
      Total volume in USD (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_volume" type="object">
      Total buy volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="swap_count" type="object">
      Total number of swaps

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_buyers" type="object">
      Number of unique buyer addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="last_1hr" type="object">
  Aggregated trading metrics for the last 1 hour

  Type: [`TimeframeMetrics`](/api-reference/streaming-api/types/timeframe-metrics)

  <Expandable title="properties">
    <ResponseField name="volume" type="object">
      Total volume in native/quote token (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_sellers" type="object">
      Number of unique seller addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_count" type="object">
      Number of sell transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="price" type="object">
      Price: current\_value = current price, previous\_value = price at window start

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_count" type="object">
      Number of buy transactions

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="sell_volume" type="object">
      Total sell volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="volume_usd" type="object">
      Total volume in USD (buy + sell)

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="buy_volume" type="object">
      Total buy volume in USD

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="swap_count" type="object">
      Total number of swaps

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="unique_buyers" type="object">
      Number of unique buyer addresses

      Type: [`MetricValue`](/api-reference/streaming-api/types/metric-value)

      <Expandable title="properties">
        <ResponseField name="previous_value" type="float">
          Total value for the previous duration
        </ResponseField>

        <ResponseField name="pct_change" type="float">
          Percent change between current\_value and previous\_value
        </ResponseField>

        <ResponseField name="current_value" type="float">
          Total value for the most recent duration
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="quote_rate_usd" type="float">
  Exchange rate between base and quote tokens in USD
</ResponseField>

<ResponseField name="sender" type="string">
  Address that sent the transaction
</ResponseField>

<ResponseField name="quote_token" type="object">
  Information about the quote token in the pair

  Type: [`TokenContractMetadata`](/api-reference/streaming-api/types/token-contract-metadata)

  <Expandable title="properties">
    <ResponseField name="contract_name" type="string">
      Name of the token contract
    </ResponseField>

    <ResponseField name="contract_address" type="string">
      Address of the token contract
    </ResponseField>

    <ResponseField name="contract_decimals" type="int">
      Number of decimal places for the token
    </ResponseField>

    <ResponseField name="contract_ticker_symbol" type="string">
      Ticker symbol of the token
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="id" type="string">
  Unique identifier for this swap event
</ResponseField>

<ResponseField name="chain_name" type="enum">
  The blockchain network where the pair exists

  Type: [`ChainName`](/api-reference/streaming-api/types/chain-name)
</ResponseField>

<ResponseField name="direction" type="string">
  Swap direction: buy or sell
</ResponseField>

<ResponseField name="timestamp" type="string">
  Timestamp of the latest swap (ISO-8601)
</ResponseField>
