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

# Get Open Limit Orders For Pool

> Paginated per-order detail for the wallet's live limit orders in one pool,
sorted by placement time DESC. "Live" = has no `close_limit_orders` row.



## OpenAPI

````yaml /developer-guides/dlmm/api-reference/openapi.json get /wallets/{wallet}/limit_orders/open/pools/{pool_address}
openapi: 3.1.0
info:
  title: DLMM API
  description: >-
    Indexed DLMM data for pools, portfolios, positions, limit orders, wallets,
    and protocol stats.
  license:
    name: ''
  version: 0.1.0
servers:
  - url: https://dlmm.datapi.meteora.ag
    description: Production
  - url: https://dlmm.dev.metdev.io
    description: Development
security: []
paths:
  /wallets/{wallet}/limit_orders/open/pools/{pool_address}:
    get:
      tags:
        - Limit Orders
      summary: Get Open Limit Orders For Pool
      description: >-
        Paginated per-order detail for the wallet's live limit orders in one
        pool,

        sorted by placement time DESC. "Live" = has no `close_limit_orders` row.
      operationId: Get Open Limit Orders For Pool
      parameters:
        - name: wallet
          in: path
          description: Base58-encoded wallet address
          required: true
          schema:
            type: string
          example: Dc85YcHkAWs62ndssWcGN5V4xYaQzPzgUDiRGtvnZas6
        - name: pool_address
          in: path
          description: Base58-encoded LB pair (pool) address
          required: true
          schema:
            type: string
          example: 5BHMzgzRXab4AKJzAm8Xjq3e2v2WSCnLqgP8SiGZAaC
        - name: page
          in: query
          description: 'Page number, 1-indexed. Default: 1'
          required: false
          schema:
            type:
              - integer
              - 'null'
            format: int64
            minimum: 1
        - name: page_size
          in: query
          description: 'Number of results per page. Default: 20, max: 1000'
          required: false
          schema:
            type:
              - integer
              - 'null'
            format: int64
            default: 20
            maximum: 1000
            minimum: 1
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenLimitOrdersForPoolResponse'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    OpenLimitOrdersForPoolResponse:
      type: object
      description: >-
        Top-level response for `GET
        /wallets/{wallet}/limit_orders/open/pools/{pool_address}`.

        Pool metadata and live pool state are emitted once at the top; per-order

        rows in `data` only carry order-specific fields.
      required:
        - pool
        - current_active_bin_id
        - current_pool_price
        - total
        - pages
        - current_page
        - page_size
        - data
      properties:
        current_active_bin_id:
          type: integer
          format: int32
          description: Live active bin id from the dynamic pool cache.
        current_page:
          type: integer
          format: int64
          minimum: 0
        current_pool_price:
          type: string
          description: Pool's live price (token Y per token X) from the dynamic pool cache.
        data:
          type: array
          items:
            $ref: '#/components/schemas/OpenLimitOrderDetail'
        page_size:
          type: integer
          format: int64
          minimum: 0
        pages:
          type: integer
          format: int64
          minimum: 0
        pool:
          $ref: '#/components/schemas/LimitOrderPoolDetails'
        total:
          type: integer
          format: int64
          minimum: 0
    ErrorResponse:
      type: object
      required:
        - message
      properties:
        message:
          type: string
    OpenLimitOrderDetail:
      type: object
      description: >-
        Per-order detail for a live limit order inside a specific pool. Amounts
        use

        the `input`/`output` terminology (input is the deposited token, output
        is

        the expected fill token) to abstract ask/bid semantics for the frontend.

        Pool-level metadata (pair, bin step, fees, tokens, current pool state)
        lives

        once at the top of the response — see `OpenLimitOrdersForPoolResponse`.
      required:
        - limit_order_address
        - user_address
        - is_ask_side
        - lower_pool_price
        - upper_pool_price
        - input_token
        - input_token_mint
        - output_token
        - output_token_mint
        - input_amount
        - input_amount_usd
        - input_amount_sol
        - output_amount_expected
        - filled_pct
        - filled_input_amount
        - total_filled_amount
        - total_filled_amount_usd
        - total_filled_amount_sol
        - total_unfilled_amount
        - total_unfilled_amount_usd
        - total_unfilled_amount_sol
        - total_bonus_x
        - total_bonus_y
        - total_bonus_usd
        - total_bonus_sol
        - opened_at
        - opened_at_signature
        - opened_at_slot
        - bin_distribution
      properties:
        bin_distribution:
          type: array
          items:
            $ref: '#/components/schemas/OpenLimitOrderBinPoint'
          description: Per-bin distribution sorted by `bin_id` ASC.
        filled_input_amount:
          type: string
          description: Filled amount expressed in input (deposit) token units.
        filled_pct:
          type: string
        input_amount:
          type: string
        input_amount_sol:
          type: string
        input_amount_usd:
          type: string
        input_token:
          type: string
        input_token_mint:
          type: string
        is_ask_side:
          type: boolean
          description: true = ask (selling X for Y), false = bid (buying X with Y).
        limit_order_address:
          type: string
        lower_pool_price:
          type: number
          format: double
        nearest_unfilled_bin_id:
          type:
            - integer
            - 'null'
          format: int32
          description: >-
            Bin id of the nearest still-unfilled (or partially-filled) bin to
            the

            current active bin. `None` only when every bin in the order is

            fulfilled. Tie-broken to the lower `bin_id`.
        nearest_unfilled_bin_price:
          type:
            - string
            - 'null'
          description: >-
            Price of `nearest_unfilled_bin_id` (same units as
            `current_pool_price`

            on the enclosing response wrapper). `None` only when fully filled.

            Frontend computes the percentage distance as

            `(nearest_unfilled_bin_price - current_pool_price) /
            current_pool_price`.
        opened_at:
          type: integer
          format: int64
          description: Unix seconds.
          minimum: 0
        opened_at_signature:
          type: string
        opened_at_slot:
          type: integer
          format: int64
          minimum: 0
        output_amount_expected:
          type: string
          description: |-
            Expected output at placement bin prices — `amount_y` for asks,
            `amount_x` for bids. Pre-computed on the
            `limit_orders_aggregate.output_amount_expected` column by the open
            MV via `if(is_ask_side, amount_y, amount_x)`, so this field is just
            the stored value (no per-bin math at request time).
        output_token:
          type: string
        output_token_mint:
          type: string
        total_bonus_sol:
          type: string
          description: SOL value of bonus (current spot SOL price).
        total_bonus_usd:
          type: string
        total_bonus_x:
          type: string
        total_bonus_y:
          type: string
        total_filled_amount:
          type: string
          description: >-
            Total filled amount in *output* token display units — what the user
            has

            received. Computed as `Σ fulfilled_at_bin × bin_price` for asks, or

            `Σ fulfilled / bin_price` for bids. Each bin's price is fixed by the

            program at fill time, so this is the close estimate of the on-chain

            output (a true figure is only emitted at cancel).
        total_filled_amount_sol:
          type: string
        total_filled_amount_usd:
          type: string
        total_unfilled_amount:
          type: string
          description: |-
            Total unfilled deposit in input-token display units
            (`input_amount - filled_input_amount`).
        total_unfilled_amount_sol:
          type: string
        total_unfilled_amount_usd:
          type: string
        upper_pool_price:
          type: number
          format: double
        user_address:
          type: string
    LimitOrderPoolDetails:
      type: object
      description: |-
        Pool-level metadata shared across all limit-order responses for a given
        pool. Same shape on both the open- and closed-order endpoints so clients
        can render the pool header from a single struct.
      required:
        - pool_address
        - pair_name
        - bin_step
        - base_fee
        - token_x_mint
        - token_y_mint
        - token_x_icon
        - token_y_icon
        - token_x
        - token_y
        - collect_fee_mode
      properties:
        base_fee:
          type: string
          description: >-
            Pool base fee as a percentage (f64 serialized as string to preserve
            precision).
        bin_step:
          type: integer
          format: int32
          description: Pool bin step in basis points (on-chain u16).
          minimum: 0
        collect_fee_mode:
          type: integer
          format: int32
          description: |-
            0 = `InputOnly` (bonus flows to the deposit/input token),
            1 = `OnlyY` (bonus always in token Y regardless of side).
          minimum: 0
        pair_name:
          type: string
          description: '`"{X}-{Y}"` computed from token symbols.'
        pool_address:
          type: string
        token_x:
          type: string
        token_x_icon:
          type: string
        token_x_mint:
          type: string
        token_y:
          type: string
        token_y_icon:
          type: string
        token_y_mint:
          type: string
    OpenLimitOrderBinPoint:
      type: object
      description: >-
        Per-bin point in an open limit order's distribution. Amounts are in the

        input (deposit) token's display units — token X for an ask, token Y for
        a

        bid — matching the order-level `filled_input_amount`.
      required:
        - bin_id
        - price
        - deposit_amount
        - fulfilled_amount
        - unfilled_amount
        - output_received_amount
        - fill_status
      properties:
        bin_id:
          type: integer
          format: int32
        deposit_amount:
          type: string
          description: >-
            Original deposit at this bin in input-token display units. The

            frontend's bar-chart heights are derived from `deposit_amount ×
            price`

            (i.e. the notional in output-token terms) — no per-bin USD field is

            exposed since order-level totals carry the dollar/SOL values.
        fill_status:
          $ref: '#/components/schemas/LimitOrderBinFillStatus'
        fulfilled_amount:
          type: string
          description: Filled portion in input-token display units.
        output_received_amount:
          type: string
          description: >-
            Output-token amount received from this bin's fills, in output-token

            display units. Ask: `fulfilled_amount × price`. Bid:
            `fulfilled_amount /

            price`.
        price:
          type: string
          description: Price at this bin (token Y per token X).
        unfilled_amount:
          type: string
          description: Remaining unfilled portion in input-token display units.
    LimitOrderBinFillStatus:
      type: string
      enum:
        - not_filled
        - partial_filled
        - fulfilled

````