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

# Get best deposit options

> Analyzes a user's existing wallet balances and recommends optimal vault deposit opportunities based on yield performance, risk parameters, and user-defined criteria.



## OpenAPI

````yaml https://api.vaults.fyi/v2/documentation/json get /v2/portfolio/best-deposit-options/{userAddress}
openapi: 3.0.3
info:
  title: Vaults.fyi API
  version: 2.0.0
  description: >-
    The Vaults.fyi V2 API offers a streamlined, better structured, and more
    performant interface for accessing DeFi vault data. This simplified version
    delivers optimized performance while maintaining comprehensive coverage
    across networks. Basic API key use is limited to 10 requests per minute.
servers:
  - url: https://api.vaults.fyi
    description: Vaults.fyi API
security: []
tags:
  - name: General
    description: >-
      Core informational endpoints providing essential reference data such as
      networks, assets, and vaults listings for orientation and exploration.
  - name: Detailed Vaults
    description: >-
      Comprehensive vault data endpoints delivering in-depth analytics including
      APY metrics, TVL statistics, rewards breakdowns, and risk scores.
  - name: Benchmarks
    description: >-
      Vaults.fyi curated benchmark endpoints providing aggregated yield
      performance data for USD and ETH denominated assets across selected
      networks.
  - name: Historical
    description: >-
      Endpoints returning time-series historical data for vault metrics,
      enabling trend analysis and performance tracking over customizable
      periods.
  - name: Portfolio
    description: >-
      Advanced endpoints providing detailed information about user balances,
      active positions, historical interactions, and tailored investment
      opportunities.
  - name: Transactions
    description: >-
      Endpoints for executing vault deposits, withdrawals, and reward claims
      with ready-to-sign transaction payloads.
  - name: NRT
    description: >-
      NRT (Near-Real-Time) endpoints return live vault data updated continuously
      throughout the day, including current share price, total supply, TVL, and
      APY.
  - name: Health
paths:
  /v2/portfolio/best-deposit-options/{userAddress}:
    get:
      tags:
        - Portfolio
      summary: Get best deposit options
      description: >-
        Analyzes a user's existing wallet balances and recommends optimal vault
        deposit opportunities based on yield performance, risk parameters, and
        user-defined criteria.
      operationId: getBestDepositOptions
      parameters:
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: allowedAssets
          required: false
          description: Assets to be included by symbol(ticker).
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: disallowedAssets
          required: false
          description: >-
            Assets to be excluded by symbol(ticker). The parameter is ignored if
            "allowedAssets" is specified.
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: allowedProtocols
          required: false
          description: Protocols to be included by name.
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: disallowedProtocols
          required: false
          description: >-
            Protocols to be excluded by name. The parameter is ignored if
            "allowedProtocols" is specified.
        - schema:
            type: integer
            default: 100000
          in: query
          name: minTvl
          required: false
          description: Minimum TVL in USD of the vaults to be included
        - schema:
            type: number
            minimum: 0
          in: query
          name: minVaultScore
          required: false
          description: Minimum vault score required for a vault to be included
        - schema:
            type: boolean
          in: query
          name: onlyTransactional
          required: false
          description: >-
            Include only vaults that are supported in the transactional
            interface.
        - schema:
            type: boolean
            default: 'true'
          in: query
          name: onlyAppFeatured
          required: false
          description: Include only vaults that are featured in app.vaults.fyi
        - schema:
            type: boolean
            default: false
          in: query
          name: allowCorrupted
          required: false
          description: Allow inclusion of corrupted vaults.
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: allowVaultsWithWarnings
          required: false
          description: Whether to include vaults with warnings. Defaults to false.
        - schema:
            type: array
            items:
              type: string
              enum:
                - mainnet
                - optimism
                - arbitrum
                - polygon
                - gnosis
                - base
                - unichain
                - swellchain
                - celo
                - worldchain
                - berachain
                - ink
                - bsc
                - hyperliquid
                - plasma
                - avalanche
                - katana
                - linea
                - mega-eth
                - monad
                - etherlink
                - eip155:1
                - eip155:10
                - eip155:42161
                - eip155:137
                - eip155:100
                - eip155:8453
                - eip155:130
                - eip155:1923
                - eip155:42220
                - eip155:480
                - eip155:80094
                - eip155:57073
                - eip155:56
                - eip155:999
                - eip155:9745
                - eip155:43114
                - eip155:747474
                - eip155:59144
                - eip155:4326
                - eip155:143
                - eip155:42793
              description: Include only vaults with provided network(name or CAIP)
            default:
              - base
              - mainnet
              - arbitrum
              - optimism
          in: query
          name: allowedNetworks
          required: false
          description: Networks to be included (name or CAIP).
        - schema:
            type: array
            items:
              type: string
              enum:
                - mainnet
                - optimism
                - arbitrum
                - polygon
                - gnosis
                - base
                - unichain
                - swellchain
                - celo
                - worldchain
                - berachain
                - ink
                - bsc
                - hyperliquid
                - plasma
                - avalanche
                - katana
                - linea
                - mega-eth
                - monad
                - etherlink
                - eip155:1
                - eip155:10
                - eip155:42161
                - eip155:137
                - eip155:100
                - eip155:8453
                - eip155:130
                - eip155:1923
                - eip155:42220
                - eip155:480
                - eip155:80094
                - eip155:57073
                - eip155:56
                - eip155:999
                - eip155:9745
                - eip155:43114
                - eip155:747474
                - eip155:59144
                - eip155:4326
                - eip155:143
                - eip155:42793
              description: Include only vaults with provided network(name or CAIP)
          in: query
          name: disallowedNetworks
          required: false
          description: >-
            Networks to be excluded (name or CAIP). The parameter is ignored if
            "allowedNetworks" is specified.
        - schema:
            type: string
            enum:
              - 1day
              - 7day
              - 30day
            default: 7day
          in: query
          name: apyInterval
          required: false
          description: 'Interval for APY data. Possible values: 1day, 7day, 30day'
        - schema:
            type: number
            minimum: 0
          in: query
          name: minApy
          required: false
          description: Minimum APY of the vault to be included
        - schema:
            type: number
          in: query
          name: maxApy
          required: false
          description: Maximum APY (in decimal) of the vaults to be included
        - schema:
            type: integer
          in: query
          name: maxTvl
          required: false
          description: Maximum TVL in USD of the vaults to be included
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: tags
          required: false
          description: Tags to be included.
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: curators
          required: false
          description: Curators to be included.
        - schema:
            type: number
            minimum: 0
            default: 1
          in: query
          name: minUsdAssetValueThreshold
          required: false
          description: Minimum USD value of the vault to be included
        - schema:
            type: array
            items:
              type: string
              minLength: 1
          in: query
          name: alwaysReturnAssets
          required: false
          description: Assets to always be included in the response.
        - schema:
            type: integer
            exclusiveMinimum: true
            minimum: 0
            default: 3
          in: query
          name: maxVaultsPerAsset
          required: false
          description: Maximum number of vaults to be included per asset.
        - schema:
            type: string
            pattern: ^0x[a-fA-F0-9]{40}$
          in: path
          name: userAddress
          required: true
          description: User address to be used for best vault calculation
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestedAddress:
                    type: string
                    pattern: ^0x[a-fA-F0-9]{40}$
                    description: Address of the user requesting the data
                  userBalances:
                    type: array
                    items:
                      type: object
                      properties:
                        asset:
                          type: object
                          properties:
                            address:
                              type: string
                              pattern: ^0x[a-fA-F0-9]{40}$
                              description: Address of the asset
                            assetCaip:
                              type: string
                              pattern: >-
                                ^eip155:\d+\/(erc20:0x[0-9a-fA-F]{40}|slip44:\d+)$
                              description: CAIP-2 of the asset
                            name:
                              type: string
                              description: Name of the asset
                            symbol:
                              type: string
                              description: Symbol of the asset
                            decimals:
                              type: integer
                              description: Number of decimals of the asset
                            assetLogo:
                              type: string
                              format: uri
                              description: URL of the asset logo
                            assetPriceInUsd:
                              type: string
                              description: Price of the asset in USD
                            assetGroup:
                              type: string
                              description: >-
                                Group of the asset, e.g., ETH, USD, EURO, BTC,
                                OTHER
                            balanceNative:
                              type: string
                              description: Balance of the asset
                            balanceUsd:
                              type: string
                              description: USD value of the asset
                          required:
                            - address
                            - assetCaip
                            - name
                            - symbol
                            - decimals
                            - assetGroup
                            - balanceNative
                          additionalProperties: false
                          description: Requested asset details
                        depositOptions:
                          type: array
                          items:
                            type: object
                            properties:
                              name:
                                type: string
                                description: Name of the vault
                              vaultId:
                                type: string
                                description: >-
                                  Stable vault identity for API lookups and
                                  links
                              address:
                                type: string
                                pattern: ^0x[a-fA-F0-9]{40}$
                                description: Address of the vault
                              network:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    enum:
                                      - mainnet
                                      - optimism
                                      - arbitrum
                                      - polygon
                                      - gnosis
                                      - base
                                      - unichain
                                      - swellchain
                                      - celo
                                      - worldchain
                                      - berachain
                                      - ink
                                      - bsc
                                      - hyperliquid
                                      - plasma
                                      - avalanche
                                      - katana
                                      - linea
                                      - mega-eth
                                      - monad
                                      - etherlink
                                    description: Name of the network
                                  chainId:
                                    type: integer
                                    description: Chain ID of the network
                                  networkCaip:
                                    type: string
                                    pattern: ^eip155:\d+$
                                    description: CAIP-2 of the network
                                required:
                                  - name
                                  - chainId
                                  - networkCaip
                                additionalProperties: false
                                description: Network details of the vault
                              isTransactional:
                                type: boolean
                                description: >-
                                  Indicates if the vault supports transactional
                                  endpoints
                              isAppFeatured:
                                type: boolean
                                description: >-
                                  Indicates if the vault is featured in
                                  app.vaults.fyi
                              protocol:
                                type: object
                                properties:
                                  name:
                                    type: string
                                    description: Name of the protocol
                                  product:
                                    type: string
                                    description: Product of the protocol
                                  version:
                                    type: string
                                    description: Version of the protocol
                                  protocolUrl:
                                    type: string
                                    description: URL of the protocol
                                  description:
                                    type: string
                                    description: Description of the protocol
                                  protocolLogo:
                                    type: string
                                    description: URL of the protocol logo
                                required:
                                  - name
                                additionalProperties: false
                                description: Protocol details of the vault
                              tvl:
                                type: object
                                properties:
                                  usd:
                                    type: string
                                    description: TVL in USD
                                  native:
                                    type: string
                                    description: Native TVL
                                required:
                                  - usd
                                  - native
                                additionalProperties: false
                                description: Total Value Locked (TVL) in the vault
                              tags:
                                type: array
                                items:
                                  type: string
                                description: Tags associated with the vault
                              apy:
                                type: object
                                properties:
                                  base:
                                    type: number
                                    description: Base APY
                                  reward:
                                    type: number
                                    description: Reward APY
                                  total:
                                    type: number
                                    description: Total APY
                                required:
                                  - base
                                  - reward
                                  - total
                                additionalProperties: false
                                description: Annual Percentage Yield (APY) breakdown
                              projectedUsdAnnualEarnings:
                                type: string
                                description: Projected annual earnings in USD
                              lendUrl:
                                type: string
                                description: URL to lend the asset in the vault
                              protocolVaultUrl:
                                type: string
                                description: URL to the vault in the protocol
                            required:
                              - name
                              - vaultId
                              - address
                              - network
                              - isTransactional
                              - isAppFeatured
                              - protocol
                              - tvl
                              - apy
                              - projectedUsdAnnualEarnings
                            additionalProperties: false
                            description: Best vault details for the requested asset
                      required:
                        - depositOptions
                      additionalProperties: false
                    description: Array of user balances with asset and vault details
                  errors:
                    type: object
                    properties:
                      unsupportedNetworks:
                        type: array
                        items:
                          type: string
                      unsupportedAssets:
                        type: array
                        items:
                          type: string
                      unsupportedProtocols:
                        type: array
                        items:
                          type: string
                    required:
                      - unsupportedNetworks
                      - unsupportedAssets
                      - unsupportedProtocols
                    additionalProperties: false
                required:
                  - requestedAddress
                  - userBalances
                additionalProperties: false
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      statusCode:
                        type: number
                      error:
                        type: string
                        enum:
                          - Bad Request
                      message:
                        type: string
                      errorId:
                        type: string
                    required:
                      - statusCode
                      - error
                      - message
                    additionalProperties: false
                  - {}
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                        enum:
                          - Unauthorized
                      message:
                        type: string
                        enum:
                          - >-
                            An API key is required to access this service. Sign
                            up at https://portal.vaults.fyi/signup to generate a
                            key. We offer a Pay-As-You-Go plan so you only pay
                            for what you use, with no commitments.
                      errorId:
                        type: string
                    required:
                      - error
                      - message
                    additionalProperties: false
                  - {}
        '402':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      x402Version:
                        anyOf:
                          - type: number
                          - type: string
                      error:
                        type: string
                      resource:
                        type: object
                        properties:
                          url:
                            type: string
                          description:
                            type: string
                          mimeType:
                            type: string
                          serviceName:
                            type: string
                          tags:
                            type: array
                            items:
                              type: string
                          iconUrl:
                            type: string
                        required:
                          - url
                        additionalProperties: false
                      accepts:
                        anyOf:
                          - type: array
                            items:
                              type: object
                              properties:
                                scheme:
                                  type: string
                                  enum:
                                    - exact
                                network:
                                  type: string
                                amount:
                                  type: string
                                payTo:
                                  type: string
                                maxTimeoutSeconds:
                                  type: number
                                asset:
                                  type: string
                                extra:
                                  type: object
                                  properties:
                                    name:
                                      type: string
                                    version:
                                      type: string
                                  required:
                                    - name
                                    - version
                                  additionalProperties: false
                              required:
                                - scheme
                                - network
                                - amount
                                - payTo
                                - maxTimeoutSeconds
                                - asset
                              additionalProperties: false
                          - {}
                      extensions:
                        type: object
                        additionalProperties: {}
                    required:
                      - x402Version
                      - resource
                    additionalProperties: false
                  - {}
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                        enum:
                          - Forbidden
                      message:
                        type: string
                        enum:
                          - >-
                            This API key has exhausted its available credits. To
                            resume service, please visit
                            https://portal.vaults.fyi/signup to top-up your
                            credits
                      errorId:
                        type: string
                    required:
                      - error
                      - message
                    additionalProperties: false
                  - {}
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    enum:
                      - Not Found
                  message:
                    type: string
                required:
                  - error
                  - message
                additionalProperties: false
        '408':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      message:
                        type: string
                      errorId:
                        type: string
                    additionalProperties: false
                  - {}
        '422':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      statusCode:
                        type: number
                      error:
                        type: string
                        enum:
                          - Unprocessable Entity
                      message:
                        type: string
                      errorId:
                        type: string
                    required:
                      - statusCode
                      - error
                      - message
                    additionalProperties: false
                  - {}
        '500':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                        enum:
                          - Internal Server Error
                      message:
                        type: string
                      errorId:
                        type: string
                    required:
                      - error
                      - message
                    additionalProperties: false
                  - {}
        '503':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      statusCode:
                        type: number
                      error:
                        type: string
                        enum:
                          - Service Unavailable
                      message:
                        type: string
                      errorId:
                        type: string
                    required:
                      - statusCode
                      - error
                      - message
                    additionalProperties: false
                  - {}
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-api-key
      in: header

````