> ## 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 total portfolio PnL across all pools

> Returns the all-time total PnL in USD and percentage change across all user's pools.
This aggregates data from all closed positions across the entire portfolio.

# Arguments

* `user` - The wallet address of the user

# Returns

* `200` - The user's total portfolio PnL
* `400` - Invalid user address or query parameters



## OpenAPI

````yaml /developer-guides/dlmm/api-reference/openapi.json get /portfolio/total
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:
  /portfolio/total:
    get:
      tags:
        - Portfolio
      summary: Get total portfolio PnL across all pools
      description: >-
        Returns the all-time total PnL in USD and percentage change across all
        user's pools.

        This aggregates data from all closed positions across the entire
        portfolio.


        # Arguments


        * `user` - The wallet address of the user


        # Returns


        * `200` - The user's total portfolio PnL

        * `400` - Invalid user address or query parameters
      operationId: get_portfolio_total
      parameters:
        - name: user
          in: query
          description: User's wallet address
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successfully retrieved portfolio totals
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortfolioTotalResponse'
        '400':
          description: Invalid user address or unsupported product type
components:
  schemas:
    PortfolioTotalResponse:
      type: object
      description: Portfolio total PnL response
      required:
        - totalPnlUsd
        - totalPnlSol
        - totalPnlPctChange
        - totalPnlSolPctChange
      properties:
        totalPnlPctChange:
          type: string
          description: Total PnL percentage change across all pools (USD)
        totalPnlSol:
          type: string
          description: Total PnL in SOL across all pools (historical per-event SOL price)
        totalPnlSolPctChange:
          type: string
          description: Total PnL percentage change across all pools (SOL)
        totalPnlUsd:
          type: string
          description: |-
            Total amount deposited in USD across all pools
            NOTE: Commented out for now, but may be needed in the future
            Total PnL in USD across all pools

````