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

# List liquidity programs



## OpenAPI

````yaml openapi/api-gateway.json GET /mmlp/v2/programs
openapi: 3.1.0
info:
  title: ax-api-gateway
  description: ''
  license:
    name: ''
  version: 16.3.0
servers:
  - url: https://gateway.architect.exchange/api
security: []
tags:
  - name: api-gateway
    description: API gateway
paths:
  /mmlp/v2/programs:
    get:
      tags:
        - mmlp
      operationId: list_programs
      parameters:
        - name: account_id
          in: query
          description: The trading account to read. Omit for the caller's default account.
          required: false
          schema:
            type:
              - string
              - 'null'
      responses:
        '200':
          description: Liquidity programs by symbol, with the caller's own accrued rewards
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMmlpV2ProgramsResponse'
      security:
        - session_token: []
components:
  schemas:
    GetMmlpV2ProgramsResponse:
      type: object
      required:
        - summary
        - programs
        - total
      properties:
        programs:
          type: array
          items:
            $ref: '#/components/schemas/MmlpV2ProgramView'
        summary:
          $ref: '#/components/schemas/MmlpV2ProgramSummary'
        total:
          type: integer
          format: int64
          minimum: 0
    MmlpV2ProgramView:
      type: object
      description: |-
        One symbol's liquidity program: the terms in force and, while it is
        enrolled, the epoch it is currently sampling.
      required:
        - symbol
        - status
        - current
      properties:
        current:
          $ref: '#/components/schemas/MmlpV2Program'
        last_epoch:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MmlpV2Epoch'
              description: The running epoch's bounds, `null` unless `active`.
        status:
          $ref: '#/components/schemas/MmlpV2ProgramStatus'
        symbol:
          type: string
    MmlpV2ProgramSummary:
      type: object
      description: Program-wide budget terms, alongside the caller's own accrued rewards.
      required:
        - active_symbols
        - monthly_budget_usd
        - total_accrued_usd
      properties:
        active_symbols:
          type: integer
          format: int64
          minimum: 0
        monthly_budget_usd:
          type: string
        next_epoch_close:
          type:
            - string
            - 'null'
          format: date-time
        total_accrued_usd:
          $ref: '#/components/schemas/MmlpV2AccruedTotals'
          description: The caller's own accrued rewards, over trailing windows.
    MmlpV2Program:
      type: object
      description: |-
        One revision of a symbol's liquidity-program terms, versioned by
        `effective_at`.
      required:
        - id
        - symbol
        - effective_at
        - pool_usd
        - v_bps
        - q_min
        - bonus_windows
        - enabled
        - created_at
      properties:
        bonus_windows:
          type: array
          items:
            $ref: '#/components/schemas/MmlpV2BonusWindow'
        created_at:
          type: string
          format: date-time
        effective_at:
          type: string
          format: date-time
        enabled:
          type: boolean
          description: |-
            `false` un-enrolls the symbol: it stops being sampled and stops
            accruing. Enrollment resolves once per epoch, at its start, so a
            revision lands at the next epoch boundary — not at `effective_at`.
        id:
          type: string
          description: Opaque identifier for this revision; stable, with no ordering.
        pool_usd:
          type: string
        q_min:
          type: string
        symbol:
          type: string
        v_bps:
          type: string
    MmlpV2Epoch:
      type: object
      description: Start and end of the epoch a symbol is currently sampling.
      required:
        - epoch_start_ts
        - epoch_end_ts
      properties:
        epoch_end_ts:
          type: string
          format: date-time
        epoch_start_ts:
          type: string
          format: date-time
    MmlpV2ProgramStatus:
      type: string
      description: A symbol's enrollment state, derived from its revision history.
      enum:
        - active
        - scheduled
        - disabled
    MmlpV2AccruedTotals:
      type: object
      description: |-
        Rewards accrued over trailing windows ending now: the last 24 hours,
        month, 3 months, and year.
      required:
        - 24h
        - 1m
        - 3m
        - 1y
      properties:
        1m:
          type: string
        1y:
          type: string
        24h:
          type: string
        3m:
          type: string
    MmlpV2BonusWindow:
      type: object
      description: |-
        A half-open `[start_minute, end_minute)` slice of the epoch, in minutes
        from its start, whose scores are multiplied by `multiplier`.
      required:
        - start_minute
        - end_minute
        - multiplier
      properties:
        end_minute:
          type: integer
          format: int32
          minimum: 0
        multiplier:
          type: string
        start_minute:
          type: integer
          format: int32
          minimum: 0
  securitySchemes:
    session_token:
      type: http
      scheme: bearer
      description: User session token

````