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

# Liquidity Events by Pool Address

> To query the add and remove liquidity events based on the provided pool address

export const CacheInfo = ({publicRate, paidRate, rate}) => {
  const fmt = v => v === 0 ? 'Real-time (Cacheless)' : `Every ${v}`;
  if (rate !== undefined) {
    return <Callout icon="clock-rotate-left" color="#2196F3" iconType="regular">
        <strong>Cache / Update Frequency:</strong><br />{fmt(rate)}
      </Callout>;
  }
  if (publicRate !== undefined && paidRate !== undefined) {
    return <Callout icon="clock-rotate-left" color="#2196F3" iconType="regular">
        <strong>Cache / Update Frequency:</strong><ul><li>{fmt(paidRate)} (Paid API)</li><li>{fmt(publicRate)} (Demo / Keyless API)</li></ul>
      </Callout>;
  }
  return null;
};

export const PlanExclusivity = ({tier}) => {
  if (tier === "enterprise") {
    return <Callout icon="crown" color="#FFC107" iconType="regular">
        <strong>Enterprise Only</strong><br />This endpoint is exclusively available to <strong>Enterprise</strong> plan.<br /><a href="https://www.coingecko.com/en/api/enterprise">→ Contact sales</a>
      </Callout>;
  }
  if (tier === "analyst_above") {
    return <Callout icon="briefcase" color="#FFC107" iconType="regular">
        <strong>Analyst Plan and Above</strong><br />This endpoint is only available to <strong>Analyst, Lite, Pro, and Enterprise</strong> plan.<br /><a href="https://www.coingecko.com/en/api/pricing">→ View pricing</a>
      </Callout>;
  }
  if (tier === "basic_above") {
    return <Callout icon="briefcase" color="#FFC107" iconType="regular">
        <strong>Basic Plan and Above</strong><br />This endpoint is only available to <strong>Basic, Analyst, Lite, Pro, and Enterprise</strong> plan.<br /><a href="https://www.coingecko.com/en/api/pricing">→ View pricing</a>
      </Callout>;
  }
  throw new Error(`PlanExclusivity: invalid tier "${tier}". Use "basic_above", "analyst_above", or "enterprise".`);
};

#### Notes

* Paginate with `cursor` rather than a page number:
  * Pass `meta.next_cursor` back unchanged as `cursor` to fetch the next page.
  * `meta.next_cursor` is `null` on the last page.
  * An invalid or expired cursor returns `400` — restart pagination without `cursor`.
* `base_token_amount` and `quote_token_amount` are always positive; `kind` carries the direction.
* `volume_in_usd` is the combined USD value of both tokens in the event.

<Accordion title="Supported networks">
  | Chain | Network `id` | DEXes |
  | - | - | - |
  | Solana | `solana` | PumpSwap, Meteora DAMM v2 |

  * Pools on any other network or DEX return `400`.
  * A pool on a supported DEX with no liquidity events returns `200` with an empty `data` array, not `404`.
</Accordion>

<Note>
  Event history is available from May 2026 onwards.
</Note>

<PlanExclusivity tier="analyst_above" />

<CacheInfo rate={0} />


## OpenAPI

````yaml openapi-specs/pro-api.json get /onchain/networks/{network}/pools/{pool_address}/liquidity_events
openapi: 3.0.0
info:
  title: CoinGecko Pro API
  version: 3.0.0
servers:
  - url: https://pro-api.coingecko.com/api/v3
security:
  - headerAuth: []
  - queryAuth: []
paths:
  /onchain/networks/{network}/pools/{pool_address}/liquidity_events:
    get:
      summary: Liquidity Events by Pool Address
      description: >-
        To query the add and remove liquidity events based on the provided pool
        address
      operationId: pool-liquidity-events-contract-address
      parameters:
        - name: network
          in: path
          required: true
          description: |-
            Network ID. 
            *refers to [`/onchain/networks`](/reference/networks-list).
          schema:
            type: string
            default: solana
        - name: pool_address
          in: path
          required: true
          description: Pool contract address.
          schema:
            type: string
            default: G9YxfMcZQiW7EmsU1Asxuomcm5iQrBDKpbozuTM2iwne
        - name: kind
          in: query
          required: false
          description: |-
            Filter by liquidity event kind, omit to return both. 
            Available values: `add`, `remove`
          schema:
            type: string
            enum:
              - add
              - remove
        - name: volume_in_usd_greater_than
          in: query
          required: false
          description: |-
            Filter liquidity events by volume in USD greater than this value. 
            Must be a positive number.
          schema:
            type: number
        - name: cursor
          in: query
          required: false
          description: >-
            Cursor from the previous response, passed back unchanged to fetch
            the next page.
          schema:
            type: string
        - name: per_page
          in: query
          required: false
          description: |-
            Total results per page. 
            Default value: 20 
            Valid values: 1...50
          schema:
            type: integer
      responses:
        '200':
          description: Liquidity events from a pool
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PoolLiquidityEvents'
              example:
                data:
                  - id: >-
                      solana_457611113_ya1EoX4PYj6vh3h5iVnqpXrs1K4tB2u1xsYadxU27kbKzGgfNihLgek1qSU68ws3o4VYsngpGFw4HNGqfbKaoVv_20_1792148006
                    type: liquidity_event
                    attributes:
                      block_number: 457611113
                      tx_hash: >-
                        ya1EoX4PYj6vh3h5iVnqpXrs1K4tB2u1xsYadxU27kbKzGgfNihLgek1qSU68ws3o4VYsngpGFw4HNGqfbKaoVv
                      tx_from_address: 8wUyLahcTw85GWGxsXWNgPF7DEbMPH45zpkjJnxPYrNP
                      block_timestamp: '2026-10-16T10:53:26Z'
                      kind: remove
                      base_token_address: 3GP5xgK7cdSeWkgmcAh4vomARuDYoWi89saU3AKZnhKm
                      base_token_amount: '131587980.65415'
                      quote_token_address: So11111111111111111111111111111111111111112
                      quote_token_amount: '187.258906'
                      base_token_price_in_usd: '0.0001417'
                      quote_token_price_in_usd: '106.496866'
                      volume_in_usd: '38593.231589'
                meta:
                  next_cursor: null
components:
  schemas:
    PoolLiquidityEvents:
      type: object
      required:
        - data
      properties:
        data:
          type: array
          items:
            type: object
            required:
              - id
              - type
              - attributes
            properties:
              id:
                type: string
                description: Liquidity event identifier
              type:
                type: string
                description: Resource type
              attributes:
                type: object
                required:
                  - block_number
                  - tx_hash
                  - tx_from_address
                  - block_timestamp
                  - kind
                  - base_token_address
                  - base_token_amount
                  - quote_token_address
                  - quote_token_amount
                  - base_token_price_in_usd
                  - quote_token_price_in_usd
                  - volume_in_usd
                properties:
                  block_number:
                    type: integer
                    description: Block number of the liquidity event
                  tx_hash:
                    type: string
                    description: Transaction hash
                  tx_from_address:
                    type: string
                    description: Transaction sender address
                  block_timestamp:
                    type: string
                    description: Block timestamp
                  kind:
                    type: string
                    enum:
                      - add
                      - remove
                    description: Liquidity event kind (add or remove)
                  base_token_address:
                    type: string
                    description: Base token contract address
                  base_token_amount:
                    type: string
                    description: Amount of base token added or removed
                  quote_token_address:
                    type: string
                    description: Quote token contract address
                  quote_token_amount:
                    type: string
                    description: Amount of quote token added or removed
                  base_token_price_in_usd:
                    type: string
                    description: Price of base token in USD at the time of the event
                  quote_token_price_in_usd:
                    type: string
                    description: Price of quote token in USD at the time of the event
                  volume_in_usd:
                    type: string
                    description: Total value of the liquidity event in USD
        meta:
          type: object
          required:
            - next_cursor
          properties:
            next_cursor:
              type: string
              nullable: true
              description: Cursor for the next page, null when there are no further pages
  securitySchemes:
    headerAuth:
      type: apiKey
      in: header
      name: x-cg-pro-api-key
      description: >-
        Learn how to [set up your API
        key](https://docs.coingecko.com/docs/setting-up-your-api-key)
    queryAuth:
      type: apiKey
      in: query
      name: x_cg_pro_api_key
      description: >-
        Learn how to [set up your API
        key](https://docs.coingecko.com/docs/setting-up-your-api-key)

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.