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

# List all yield opportunities

> Retrieve a paginated list of available yield opportunities across all supported networks and protocols.



## OpenAPI

````yaml get /v1/yields
openapi: 3.0.0
info:
  title: Yield.xyz API
  description: API Documentation
  version: '1.0'
  contact: {}
servers:
  - url: https://api.yield.xyz
    description: Production environment
  - url: https://api.staging.yield.xyz
    description: Staging environment
  - url: http://localhost:3000
    description: Local development
security: []
tags:
  - name: Discovery
    description: Browse and discover yield opportunities, networks, and providers
  - name: Portfolio
    description: User-specific balances, activity, and rewards
  - name: Actions
    description: Generate transactions to enter, exit, and manage yields
externalDocs:
  description: For more information
  url: https://docs.yield.xyz
paths:
  /v1/yields:
    get:
      tags:
        - Discovery
      summary: List all yield opportunities
      description: >-
        Retrieve a paginated list of available yield opportunities across all
        supported networks and protocols.
      operationId: YieldsController_getYields
      parameters:
        - name: offset
          required: false
          in: query
          description: Offset for pagination
          example: 0
          schema:
            minimum: 0
            default: 0
            type: number
        - name: limit
          required: false
          in: query
          description: Number of items per page
          example: 20
          schema:
            minimum: 1
            maximum: 100
            default: 20
            type: number
        - name: network
          required: false
          in: query
          description: Filter by network
          schema:
            enum:
              - ethereum
              - ethereum-goerli
              - ethereum-holesky
              - ethereum-sepolia
              - ethereum-hoodi
              - arbitrum
              - base
              - base-sepolia
              - gnosis
              - optimism
              - polygon
              - polygon-amoy
              - starknet
              - zksync
              - linea
              - unichain
              - monad-testnet
              - avalanche-c
              - avalanche-c-atomic
              - avalanche-p
              - binance
              - celo
              - fantom
              - harmony
              - moonriver
              - okc
              - viction
              - core
              - sonic
              - katana
              - hyperevm
              - agoric
              - akash
              - axelar
              - band-protocol
              - bitsong
              - canto
              - chihuahua
              - comdex
              - coreum
              - cosmos
              - crescent
              - cronos
              - cudos
              - desmos
              - dydx
              - evmos
              - fetch-ai
              - gravity-bridge
              - injective
              - irisnet
              - juno
              - kava
              - ki-network
              - mars-protocol
              - nym
              - okex-chain
              - onomy
              - osmosis
              - persistence
              - quicksilver
              - regen
              - secret
              - sentinel
              - sommelier
              - stafi
              - stargaze
              - stride
              - teritori
              - tgrade
              - umee
              - sei
              - mantra
              - celestia
              - saga
              - zetachain
              - dymension
              - humansai
              - neutron
              - polkadot
              - kusama
              - westend
              - bittensor
              - binancebeacon
              - cardano
              - near
              - solana
              - solana-devnet
              - stellar
              - stellar-testnet
              - sui
              - tezos
              - tron
              - ton
              - ton-testnet
            type: string
        - name: networks
          required: false
          in: query
          description: Filter by multiple networks (comma separated)
          schema:
            type: string
        - name: yieldId
          required: false
          in: query
          example: optimism-usdt-aave-v3-lending
          schema:
            type: string
            maxLength: 200
        - name: yieldIds
          required: false
          in: query
          example:
            - optimism-usdt-aave-v3-lending
          schema:
            maxItems: 100
            maxLength: 200
            type: array
            items:
              type: string
        - name: type
          required: false
          in: query
          description: Filter by yield type
          schema:
            type: string
            enum:
              - staking
              - restaking
              - lending
              - vault
              - fixed_yield
              - real_world_asset
        - name: types
          required: false
          in: query
          description: Filter by multiple yield types (comma separated)
          schema:
            type: array
            items:
              type: string
              enum:
                - staking
                - restaking
                - lending
                - vault
                - fixed_yield
                - real_world_asset
        - name: hasCooldownPeriod
          required: false
          in: query
          description: Filter by cooldown period
          example: true
          schema:
            type: boolean
        - name: hasWarmupPeriod
          required: false
          in: query
          description: Filter by warmup period
          example: true
          schema:
            type: boolean
        - name: token
          required: false
          in: query
          description: Filter by token symbol or address
          schema:
            type: string
        - name: inputToken
          required: false
          in: query
          description: Filter by input token symbol or address
          schema:
            type: string
        - name: inputTokens
          required: false
          in: query
          description: Filter by multiple input token symbol or address (comma separated)
          schema:
            type: array
            items:
              type: string
        - name: provider
          required: false
          in: query
          description: Filter by provider ID
          schema:
            type: string
        - name: providers
          required: false
          in: query
          description: Filter by multiple provider IDs (comma separated)
          schema:
            type: array
            items:
              type: string
        - name: search
          required: false
          in: query
          description: Search by yield name
          schema:
            type: string
        - name: sort
          required: false
          in: query
          description: Sort by yield status
          schema:
            enum:
              - statusEnterAsc
              - statusEnterDesc
              - statusExitAsc
              - statusExitDesc
            type: string
      responses:
        '200':
          description: Returns a paginated list of yield opportunities
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/PaginatedResponseDto'
                  - properties:
                      items:
                        type: array
                        items:
                          $ref: '#/components/schemas/YieldDto'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Validation failed
                  error:
                    type: string
                    example: Bad Request
                  statusCode:
                    type: number
                    example: 400
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Invalid API key
                  error:
                    type: string
                    example: Unauthorized
                  statusCode:
                    type: number
                    example: 401
        '429':
          description: Rate limit exceeded
          headers:
            x-ratelimit-limit:
              description: Request limit per window
              schema:
                type: string
            x-ratelimit-remaining:
              description: Remaining requests (will be 0)
              schema:
                type: string
            x-ratelimit-reset:
              description: Unix timestamp when window resets
              schema:
                type: string
            retry-after:
              description: Seconds to wait before retrying
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Rate limit exceeded
                  error:
                    type: string
                    example: Too Many Requests
                  statusCode:
                    type: number
                    example: 429
                  retryAfter:
                    type: number
                    example: 30
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Internal server error
                  error:
                    type: string
                    example: Internal Server Error
                  statusCode:
                    type: number
                    example: 500
      security:
        - ApiKey: []
components:
  schemas:
    PaginatedResponseDto:
      type: object
      properties:
        total:
          type: number
          description: Total number of items available
          example: 100
        offset:
          type: number
          description: Offset of the current page
          example: 0
        limit:
          type: number
          description: Limit of the current page
          example: 20
      required:
        - total
        - offset
        - limit
    YieldDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for this yield opportunity
          example: ethereum-eth-lido-staking
        network:
          type: string
          description: Network this yield opportunity is on
          enum:
            - ethereum
            - ethereum-goerli
            - ethereum-holesky
            - ethereum-sepolia
            - ethereum-hoodi
            - arbitrum
            - base
            - base-sepolia
            - gnosis
            - optimism
            - polygon
            - polygon-amoy
            - starknet
            - zksync
            - linea
            - unichain
            - monad-testnet
            - avalanche-c
            - avalanche-c-atomic
            - avalanche-p
            - binance
            - celo
            - fantom
            - harmony
            - moonriver
            - okc
            - viction
            - core
            - sonic
            - katana
            - hyperevm
            - agoric
            - akash
            - axelar
            - band-protocol
            - bitsong
            - canto
            - chihuahua
            - comdex
            - coreum
            - cosmos
            - crescent
            - cronos
            - cudos
            - desmos
            - dydx
            - evmos
            - fetch-ai
            - gravity-bridge
            - injective
            - irisnet
            - juno
            - kava
            - ki-network
            - mars-protocol
            - nym
            - okex-chain
            - onomy
            - osmosis
            - persistence
            - quicksilver
            - regen
            - secret
            - sentinel
            - sommelier
            - stafi
            - stargaze
            - stride
            - teritori
            - tgrade
            - umee
            - sei
            - mantra
            - celestia
            - saga
            - zetachain
            - dymension
            - humansai
            - neutron
            - polkadot
            - kusama
            - westend
            - bittensor
            - binancebeacon
            - cardano
            - near
            - solana
            - solana-devnet
            - stellar
            - stellar-testnet
            - sui
            - tezos
            - tron
            - ton
            - ton-testnet
        inputTokens:
          description: Accepted input tokens (auto-converted as needed)
          type: array
          items:
            $ref: '#/components/schemas/TokenDto'
        outputToken:
          description: Token received from the protocol
          allOf:
            - $ref: '#/components/schemas/TokenDto'
        token:
          description: Canonical deposit token - used for balances
          allOf:
            - $ref: '#/components/schemas/TokenDto'
        rewardRate:
          description: Total effective yield broken down by source and token.
          allOf:
            - $ref: '#/components/schemas/RewardRateDto'
        statistics:
          description: Key statistics and analytics for this yield opportunity
          allOf:
            - $ref: '#/components/schemas/YieldStatisticsDto'
        status:
          description: Current availability of user actions like enter, exit, claim
          allOf:
            - $ref: '#/components/schemas/YieldStatusDto'
        metadata:
          description: >-
            Descriptive metadata including name, logo, description, and
            documentation
          allOf:
            - $ref: '#/components/schemas/YieldMetadataDto'
        mechanics:
          description: Operational mechanics including constraints, fees, and capabilities
          allOf:
            - $ref: '#/components/schemas/YieldMechanicsDto'
        providerId:
          type: string
          description: The provider ID this yield belongs to
          example: lido
        tags:
          description: Optional tags for filtering or categorization
          example:
            - restaking
            - ETH
            - LST
          type: array
          items:
            type: string
      required:
        - id
        - network
        - inputTokens
        - token
        - rewardRate
        - status
        - metadata
        - mechanics
        - providerId
    TokenDto:
      type: object
      properties:
        symbol:
          type: string
          description: Token symbol
          example: ETH
        name:
          type: string
          description: Token name
          example: Ethereum
        decimals:
          type: number
          description: Token decimal places
          example: 18
        network:
          type: string
          description: Token network
          enum:
            - ethereum
            - ethereum-goerli
            - ethereum-holesky
            - ethereum-sepolia
            - ethereum-hoodi
            - arbitrum
            - base
            - base-sepolia
            - gnosis
            - optimism
            - polygon
            - polygon-amoy
            - starknet
            - zksync
            - linea
            - unichain
            - monad-testnet
            - avalanche-c
            - avalanche-c-atomic
            - avalanche-p
            - binance
            - celo
            - fantom
            - harmony
            - moonriver
            - okc
            - viction
            - core
            - sonic
            - katana
            - hyperevm
            - agoric
            - akash
            - axelar
            - band-protocol
            - bitsong
            - canto
            - chihuahua
            - comdex
            - coreum
            - cosmos
            - crescent
            - cronos
            - cudos
            - desmos
            - dydx
            - evmos
            - fetch-ai
            - gravity-bridge
            - injective
            - irisnet
            - juno
            - kava
            - ki-network
            - mars-protocol
            - nym
            - okex-chain
            - onomy
            - osmosis
            - persistence
            - quicksilver
            - regen
            - secret
            - sentinel
            - sommelier
            - stafi
            - stargaze
            - stride
            - teritori
            - tgrade
            - umee
            - sei
            - mantra
            - celestia
            - saga
            - zetachain
            - dymension
            - humansai
            - neutron
            - polkadot
            - kusama
            - westend
            - bittensor
            - binancebeacon
            - cardano
            - near
            - solana
            - solana-devnet
            - stellar
            - stellar-testnet
            - sui
            - tezos
            - tron
            - ton
            - ton-testnet
          example: Ethereum
        address:
          type: string
          description: Token address (if applicable)
          example: 0x...
        logoURI:
          type: string
          description: Token logo URI
          example: https://...
        isPoints:
          type: boolean
          description: Token is points
          example: true
        coinGeckoId:
          type: string
          description: Token CoinGecko ID
          example: ethereum
      required:
        - symbol
        - name
        - decimals
        - network
    RewardRateDto:
      type: object
      properties:
        total:
          type: number
          description: Estimated reward rate across all sources (e.g. staking, points)
          example: 6.5
        rateType:
          type: string
          description: Whether this reward rate is APR or APY
          example: APR
        components:
          description: Breakdown of reward rates by source
          type: array
          items:
            $ref: '#/components/schemas/RewardDto'
      required:
        - total
        - rateType
        - components
    YieldStatisticsDto:
      type: object
      properties:
        tvlUsd:
          type: string
          description: Total value locked in USD
          example: 1,200,000
          nullable: true
        tvl:
          type: string
          description: Total value locked in primary underlying token
          example: '500.25'
          nullable: true
        tvlRaw:
          type: string
          description: Raw total value locked (full precision)
          example: '500250000000000000000'
          nullable: true
        uniqueUsers:
          type: number
          description: Number of users with active positions in the yield
          example: 348
          nullable: true
        averagePositionSizeUsd:
          type: string
          description: Average position size in USD
          example: 3,448.27
          nullable: true
        averagePositionSize:
          type: string
          description: Average position size in primary underlying token
          example: '1.44'
          nullable: true
    YieldStatusDto:
      type: object
      properties:
        enter:
          type: boolean
          description: Whether the user can currently enter this yield
          example: true
        exit:
          type: boolean
          description: Whether the user can currently exit this yield
          example: true
      required:
        - enter
        - exit
    YieldMetadataDto:
      type: object
      properties:
        name:
          type: string
          description: Display name of the yield opportunity
          example: Lido Staking
        logoURI:
          type: string
          description: Yield opportunity logo URI
          example: https://lido.fi/logo.png
        description:
          type: string
          description: >-
            Markdown-supported short description of this yield opportunity,
            including where rewards come from.
          example: >-
            Stake ETH with Lido to earn auto-compounding validator rewards via
            stETH.
        documentation:
          type: string
          description: Link to documentation or integration guide
          example: https://docs.lido.fi
        underMaintenance:
          type: boolean
          description: Whether this yield is currently under maintenance
          example: false
        deprecated:
          type: boolean
          description: Whether this yield is deprecated and will be discontinued
          example: false
        supportedStandards:
          type: array
          items:
            $ref: '#/components/schemas/ERCStandards'
      required:
        - name
        - logoURI
        - description
        - documentation
        - underMaintenance
        - deprecated
        - supportedStandards
    YieldMechanicsDto:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/YieldType'
        requiresValidatorSelection:
          type: boolean
          description: Indicates whether this yield requires validator selection
          example: true
        rewardSchedule:
          $ref: '#/components/schemas/RewardSchedule'
        rewardClaiming:
          $ref: '#/components/schemas/RewardClaiming'
        gasFeeToken:
          description: Token used for gas fees (typically native)
          allOf:
            - $ref: '#/components/schemas/TokenDto'
        lockupPeriod:
          description: Lockup period - minimum time before exit can be initiated
          allOf:
            - $ref: '#/components/schemas/TimePeriodDto'
        cooldownPeriod:
          description: Cooldown period required before exit is allowed
          allOf:
            - $ref: '#/components/schemas/TimePeriodDto'
        warmupPeriod:
          description: Warmup period before rewards start accruing
          allOf:
            - $ref: '#/components/schemas/TimePeriodDto'
        fee:
          description: >-
            Fees charged to the user for this yield (e.g., deposit, management,
            performance).
          allOf:
            - $ref: '#/components/schemas/YieldFeeDto'
        entryLimits:
          description: Entry amount limits for this yield
          allOf:
            - $ref: '#/components/schemas/YieldEntryLimitsDto'
        supportsLedgerWalletApi:
          type: boolean
          description: Supports Ledger Wallet API (connect via Ledger Live)
        extraTransactionFormatsSupported:
          type: array
          description: Additional transaction formats supported (e.g. safe, batch)
          items:
            type: string
            enum:
              - raw
              - default
        arguments:
          description: Arguments required for each action (enter, exit, manage, etc.)
          allOf:
            - $ref: '#/components/schemas/YieldMechanicsArgumentsDto'
        possibleFeeTakingMechanisms:
          description: >-
            Possible fee-taking mechanisms for the user or integrator (i.e.,
            what fees the user/integrator can potentially earn from this yield).
          allOf:
            - $ref: '#/components/schemas/PossibleFeeTakingMechanismsDto'
      required:
        - type
        - rewardSchedule
        - rewardClaiming
        - gasFeeToken
    RewardDto:
      type: object
      properties:
        rate:
          type: number
          description: Reward rate as a decimal (e.g. 0.04 = 4%)
          example: 0.04
        rateType:
          type: string
          description: Whether this rate is APR or APY
          example: APR
        token:
          description: Token received as reward
          allOf:
            - $ref: '#/components/schemas/TokenDto'
        yieldSource:
          type: string
          description: Structured source of yield (e.g. staking, protocol incentive)
          enum:
            - staking
            - restaking
            - protocol_incentive
            - points
            - lending_interest
            - mev
            - real_world_asset_yield
          example: protocol_incentive
        description:
          type: string
          description: Optional human-readable description of this reward
          example: LDO distributed to incentivize stETH adoption via Lido Boost
      required:
        - rate
        - rateType
        - token
        - yieldSource
    ERCStandards:
      type: string
      description: Supported standards for this yield
      enum:
        - ERC20
        - ERC4626
        - ERC721
        - ERC1155
    YieldType:
      type: string
      description: Type of yield mechanism (staking, restaking, LP, vault, etc.)
      enum:
        - staking
        - restaking
        - lending
        - vault
        - fixed_yield
        - real_world_asset
    RewardSchedule:
      type: string
      description: How often rewards are distributed (e.g. continuously, epoch-based)
      enum:
        - block
        - hour
        - day
        - week
        - month
        - era
        - epoch
        - campaign
    RewardClaiming:
      type: string
      description: 'How rewards are claimed: auto, manual, or mixed'
      enum:
        - auto
        - manual
    TimePeriodDto:
      type: object
      properties:
        seconds:
          type: number
          description: Duration in seconds
          example: 86400
      required:
        - seconds
    YieldFeeDto:
      type: object
      properties:
        deposit:
          type: string
          description: Deposit fee percentage
          example: '0.00'
        withdrawal:
          type: string
          description: Withdrawal fee percentage
          example: '0.00'
        management:
          type: string
          description: Management fee percentage (annual)
          example: '2.00'
        performance:
          type: string
          description: Performance fee percentage
          example: '20.00'
    YieldEntryLimitsDto:
      type: object
      properties:
        minimum:
          type: string
          description: >-
            Minimum amount required to enter this yield in token units (null if
            no minimum)
          example: '0.01'
          nullable: true
        maximum:
          type: string
          description: >-
            Maximum amount allowed to enter this yield in token units (null if
            no limit)
          example: '1000.0'
          nullable: true
      required:
        - minimum
        - maximum
    YieldMechanicsArgumentsDto:
      type: object
      properties:
        enter:
          $ref: '#/components/schemas/ArgumentSchemaDto'
        exit:
          $ref: '#/components/schemas/ArgumentSchemaDto'
        manage:
          type: object
          description: >-
            Manage action schemas. Each yield supports different ActionTypes
            (CLAIM_UNSTAKED, CLAIM_REWARDS, etc.). Keys are ActionTypes enum
            values.
          additionalProperties:
            $ref: '#/components/schemas/ArgumentSchemaDto'
        balance:
          description: >-
            Arguments for the balances endpoint (e.g., alternative addresses,
            chain-specific fields)
          allOf:
            - $ref: '#/components/schemas/ArgumentSchemaDto'
    PossibleFeeTakingMechanismsDto:
      type: object
      properties:
        depositFee:
          type: boolean
          description: User can take (earn) a deposit fee
          example: false
        managementFee:
          type: boolean
          description: User can take (earn) a management fee
          example: false
        performanceFee:
          type: boolean
          description: User can take (earn) a performance fee
          example: false
        validatorRebates:
          type: boolean
          description: User can take (earn) validator rebates
          example: false
      required:
        - depositFee
        - managementFee
        - performanceFee
        - validatorRebates
    ArgumentSchemaDto:
      type: object
      properties:
        fields:
          description: List of argument fields
          type: array
          items:
            $ref: '#/components/schemas/ArgumentFieldDto'
        notes:
          type: string
          description: Notes or instructions for these arguments
      required:
        - fields
    ArgumentFieldDto:
      type: object
      properties:
        name:
          type: string
          description: Field name
          enum:
            - amount
            - validatorAddress
            - validatorAddresses
            - receiverAddress
            - providerId
            - duration
            - inputToken
            - subnetId
            - tronResource
            - feeConfigurationId
            - cosmosPubKey
            - tezosPubKey
            - cAddressBech
            - pAddressBech
            - executionMode
            - ledgerWalletApiCompatible
          example: amount
        type:
          type: string
          description: Field type
          example: string
          enum:
            - string
            - number
            - address
            - enum
            - boolean
        label:
          type: string
          description: Field label
          example: Amount to Enter
        description:
          type: string
          description: Field description
        required:
          type: boolean
          description: Whether the field is required
          example: true
        options:
          description: Options for enum fields
          example:
            - individual
            - batched
          type: array
          items:
            type: string
        optionsRef:
          type: string
          description: Reference to API endpoint that provides options dynamically
          example: /api/v1/validators?integrationId=eth-lido
        default:
          type: object
          description: Default value for the field
        placeholder:
          type: string
          description: Placeholder text for the field
        minimum:
          type: string
          description: Minimum allowed value for number fields (null if no minimum)
          example: '1.0'
          nullable: true
        maximum:
          type: string
          description: Maximum allowed value for number fields (null if no maximum)
          example: '100.0'
          nullable: true
        isArray:
          type: boolean
          description: Whether the field is an array
          example: false
      required:
        - name
        - type
        - label
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key

````