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

# Get wallet set fungible positions

> Token balances and DeFi positions across an EVM and Solana address, returned as one combined set.



## OpenAPI

````yaml /openapi-v1.yaml get /v1/wallet-sets/positions/
openapi: 3.0.3
info:
  version: 1.0.0
  title: REST API
  description: REST-like API provides access to rich Zerion ecosystem.
  contact:
    name: Zerion API
    url: https://developers.zerion.io/
    email: api@zerion.io
servers:
  - description: Production API
    url: https://api.zerion.io
security:
  - APIKeyBasicAuth: []
tags:
  - name: wallets
    description: >-
      Operations related to wallets, such as portfolio charts, positions, and
      transactions.
  - name: wallet sets
    description: >-
      Operations on a wallet set, returning aggregated portfolio data across at
      most one EVM address and one Solana address queried together.
  - name: fungibles
    description: >-
      Operations related to fungible assets, such as list them all, search or
      get by ID.
  - name: chains
    description: Operations related to chains, such as list all chains.
  - name: swap
    description: Operations related to swapping and bridging assets.
  - name: gas
    description: Operations related to gas.
  - name: nfts
    description: >-
      Operations related to non fungible assets, such list them, search or get
      by ID.
  - name: dapps
    description: >-
      Operations related to decentralized applications, such as list them all,
      search or get by ID.
  - name: subscriptions to transactions
    description: Operations related to subscriptions to transactions.
paths:
  /v1/wallet-sets/positions/:
    get:
      tags:
        - wallet sets
      summary: Get wallet set fungible positions
      description: >
        Returns the fungible positions of a wallet set: tokens and native coins
        held directly, plus DeFi protocol positions when `filter[positions]` is
        set to `only_complex` or `no_filter`. A wallet set is one EVM address,
        one Solana address, or both. At least one is required.


        **Liquidity pool positions.** A liquidity pool (Uniswap, Curve, Balancer
        and similar) returns one position per token in the pool, not one
        position for the pool. Positions from the same pool share an
        `attributes.group_id`, so group on that value to render a pool as a
        single row. A Uniswap V2 USDC/WETH pool, for example, returns a WETH
        position and a USDC position carrying the same `group_id`.


        **Not paginated.** All matching positions come back in a single
        response; there is no `links.next` and `page[size]` is ignored. Filters
        and sorting are applied server-side, so keep the request URL within a
        safe length (2000 characters is safe across virtually every client and
        server).


        **Solana limitation.** Protocol positions are not supported for Solana
        addresses yet.


        **See also:** [Testnets (`X-Env:
        testnet`)](https://developers.zerion.io/supported-blockchains#testnets)
        · [Filtering and the 2000-character URL
        limit](https://developers.zerion.io/pagination-and-filtering#filtering)
        · [Resource
        IDs](https://developers.zerion.io/endpoints-and-schema#resource-ids)
      operationId: listWalletSetPositions
      parameters:
        - $ref: '#/components/parameters/WalletSetAddresses'
        - name: filter[positions]
          in: query
          required: false
          description: >
            Which positions to return. Defaults to `only_simple`.


            - `only_simple` - tokens and native coins held directly in the
            wallet. DeFi protocol positions are left out.

            - `only_complex` - DeFi protocol positions only, such as staked
            assets and liquidity pools (for example Uniswap or Aave).

            - `no_filter` - both simple and protocol positions. A share token
            that a returned protocol position carries as `receipt` can be left
            out as its own `wallet` row. So `no_filter` can return fewer rows
            than `only_simple` and `only_complex` combined, and some share
            tokens still appear twice. See [Deduplicating share
            tokens](https://developers.zerion.io/recipes/defi-positions#deduplicating-share-tokens).


            Enterprise pricing can differ depending on the filter value. For
            details, contact `api@zerion.io`.
          schema:
            type: string
            default: only_simple
            enum:
              - only_simple
              - only_complex
              - no_filter
        - $ref: '#/components/parameters/Currency'
        - name: filter[position_types]
          in: query
          style: form
          explode: false
          description: >
            Keep only positions with these types (comma-separated list).


            Possible values:

            - `deposit` - Assets deposited into a DeFi protocol (e.g., supplied
            to lending pools, deposited in vaults, or provided as liquidity)

            - `loan` - Borrowed assets representing a debt position that needs
            to be repaid

            - `locked` - Assets locked for a specific period or purpose (e.g.,
            vote-escrowed tokens, time-locked tokens)

            - `staked` - Assets staked in a protocol to earn rewards,
            participate in consensus, or for governance purposes

            - `reward` - Earned rewards that are claimable or have been
            distributed but not yet withdrawn

            - `wallet` - Regular assets held directly in the wallet, not
            actively deposited in any protocol

            - `investment` - Investment positions such as tokenized funds,
            indices, or structured products
          schema:
            type: array
            maxItems: 8
            items:
              $ref: '#/components/schemas/PositionType'
        - name: filter[chain_ids]
          in: query
          style: form
          explode: false
          description: >-
            Keep only positions from these chains (comma-separated list). Only
            chains reporting `supports_positions` in the `flags` of `GET
            /v1/chains/` are accepted here. Naming a chain that fails that gate
            returns `400` rather than an empty result, with `detail` reading
            `chain <id> does not support positions` (for example `chain bob does
            not support positions`). A chain of the wrong network family for the
            wallet set's addresses is rejected the same way, with `does not
            support this wallet address type`. When the filter is omitted,
            chains that fail the gate are left out of `data` silently, with no
            error and no `meta` signal.
          schema:
            type: array
            example:
              - polygon
            maxItems: 25
            items:
              type: string
        - name: filter[fungible_ids]
          in: query
          style: form
          explode: false
          description: Keep only positions for these fungible IDs (comma-separated list).
          schema:
            type: array
            maxItems: 25
            items:
              type: string
              maxLength: 44
        - name: filter[dapp_ids]
          in: query
          style: form
          explode: false
          description: >-
            Keep only positions from these dapps (comma-separated list of dapp
            IDs).
          schema:
            type: array
            example:
              - polygon
            maxItems: 25
            items:
              type: string
              maxLength: 32
              minLength: 1
        - name: filter[trash]
          in: query
          required: false
          description: >-
            Filter positions by the `is_trash` spam flag. Defaults to
            `only_non_trash`, which leaves spam positions out.
          schema:
            type: string
            default: only_non_trash
            enum:
              - only_trash
              - only_non_trash
              - no_filter
        - name: sort
          in: query
          required: false
          description: >-
            Sort by position value. Defaults to `value`, which puts the highest
            value first. Use `-value` for lowest first.
          schema:
            type: string
            default: value
            enum:
              - '-value'
              - value
        - name: X-Env
          in: header
          description: Set to `testnet` to return testnet data instead of mainnet.
          required: false
          schema:
            type: string
            enum:
              - testnet
      responses:
        '200':
          $ref: '#/components/responses/PositionsListResponse-2'
        '400':
          $ref: '#/components/responses/MalformedParameters'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  parameters:
    WalletSetAddresses:
      name: addresses
      in: query
      required: true
      style: form
      explode: false
      description: >
        A list of wallet addresses forming a wallet set.

        example:
        0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K


        The set must contain at least one address and may include at most one
        address per supported chain type (currently EVM and Solana).

        The order of addresses does not matter.


        Returns 400 if an address in the set is not one Zerion tracks, such as a
        token contract, router

        or exchange hot wallet.
      schema:
        type: array
        minItems: 1
        maxItems: 2
        items:
          type: string
    Currency:
      name: currency
      in: query
      required: false
      description: Denominated currency value of returned prices
      schema:
        type: string
        default: usd
        enum:
          - eth
          - btc
          - usd
          - eur
          - krw
          - rub
          - gbp
          - aud
          - cad
          - inr
          - jpy
          - nzd
          - try
          - zar
          - cny
          - chf
  schemas:
    PositionType:
      type: string
      nullable: true
      description: >
        Position's type indicating how the assets are being used or their
        current state.
      enum:
        - deposit
        - loan
        - locked
        - staked
        - reward
        - wallet
        - investment
      x-enum-descriptions:
        - >-
          deposit - assets deposited into a DeFi protocol (e.g., lending pools,
          vaults, LP positions)
        - loan - borrowed assets representing a debt position
        - >-
          locked - assets locked for a period or purpose (e.g., veTokens,
          time-locks)
        - staked - assets staked to earn rewards or participate in consensus
        - reward - earned but unclaimed rewards
        - wallet - assets held directly in the user wallet
        - investment - tokenized funds, indices, structured products
    Response-11:
      type: object
      required:
        - links
        - data
      properties:
        links:
          $ref: '#/components/schemas/ResponseLinks-11'
        data:
          type: array
          items:
            $ref: '#/components/schemas/Container-3'
    ResponseLinks-11:
      type: object
      required:
        - self
      properties:
        self:
          type: string
          format: url
          example: >-
            https://api.zerion.io/v1/wallet-sets/positions/?addresses=0x42b9df65b219b3dd36ff330a4dd8f327a6ada990%2C8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K&currency=eth&filter%5Bchain_ids%5D=ethereum%2Csolana&filter%5Bpositions%5D=only_simple&filter%5Btrash%5D=only_non_trash&sort=value
    Container-3:
      type: object
      required:
        - type
        - id
        - attributes
      properties:
        type:
          type: string
          description: Resource type
          enum:
            - positions
        id:
          type: string
          description: Position's unique id
          example: 0x111c47865ade3b172a928df8f990bc7f2a3b9aaa-polygon-asset-none-
        attributes:
          $ref: '#/components/schemas/Attributes-4'
        relationships:
          $ref: '#/components/schemas/Relationships'
    Attributes-4:
      type: object
      required:
        - quantity
        - name
      properties:
        encrypted_quantity:
          $ref: '#/components/schemas/EncryptedQuantity'
        parent:
          type: string
          nullable: true
          description: Id of parent position
          example: 0x111c47865ade3b172a928df8f990bc7f2a3b9aaa-polygon-asset-none-
        protocol:
          type: string
          nullable: true
          description: Protocol which the position is belong to.
        protocol_module:
          type: string
          description: >
            The specific module or functionality within a DeFi protocol where
            this position is held. This categorizes the type of protocol
            interaction.


            Possible values and their meanings:


            - `deposit` - Generic deposit module for protocols with simple
            deposit functionality

            - `lending` - Lending and borrowing protocols (e.g., Aave, Compound)
            where users can supply or borrow assets

            - `yield` - Yield optimization and aggregator protocols (e.g., Yearn
            Finance) that automatically maximize returns

            - `liquidity_pool` - Automated Market Maker (AMM) liquidity pools
            (e.g., Uniswap, Curve) where users provide liquidity for trading

            - `staked` - Staking modules where assets are staked for rewards,
            governance, or network security

            - `leveraged_farming` - Leveraged yield farming protocols (e.g.,
            Alpaca Finance) that enable leveraged positions on farms

            - `nft_staked` - NFT staking modules where NFTs are staked to earn
            rewards

            - `farming` - Yield farming and reward distribution modules (e.g.,
            liquidity mining programs)

            - `locked` - Token locking mechanisms such as vote-escrowed (ve)
            tokens or time-locked positions

            - `vesting` - Token vesting schedules for team allocations, investor
            tokens, or earned rewards

            - `rewards` - Unclaimed rewards modules representing rewards that
            have been earned but not yet claimed

            - `investment` - Investment product modules such as tokenized funds,
            indices, or structured investment vehicles
          example: lending
        pool_address:
          type: string
          description: Address of the pool the position belongs to if applicable
          example: '0x109830a1aaad605bbf02a9dfa7b0b92ec2fb7daa'
        name:
          type: string
          description: Human readable position name
          example: Asset
        group_id:
          type: string
          description: >-
            Unique ID which could be used to group position within DApp
            naturally for convenience of users. For example for UniswapV2 it is
            grouping by specific pool.
          example: 0a771a0064dad468045899032c7fb01a971f973f7dff0a5cdc3ce199f45e94d7
        position_type:
          $ref: '#/components/schemas/PositionType'
        quantity:
          $ref: '#/components/schemas/Quantity'
        value:
          type: number
          nullable: true
          format: float
          description: Position value in requested currency
          example: 5.384656557642683
        price:
          type: number
          format: float
          description: Price of position's asset
          example: 0.043615722
        changes:
          $ref: '#/components/schemas/Change-2'
        fungible_info:
          $ref: '#/components/schemas/Info'
        flags:
          $ref: '#/components/schemas/Flags-2'
        updated_at:
          type: string
          description: >
            ISO-8601 timestamp the position was updated at.

            The field indicates when our service last checked and updated the
            balance.

            This update typically occurs immediately after any event causing a
            change in position.
          example: '2023-11-10T23:00:00Z'
        updated_at_block:
          type: integer
          format: int32
          description: Number of the block of the position
        application_metadata:
          $ref: '#/components/schemas/DAppInfo'
        receipt:
          $ref: '#/components/schemas/Receipt'
    Relationships:
      type: object
      required:
        - chain
        - fungible
      properties:
        chain:
          $ref: '#/components/schemas/Relationship'
        fungible:
          type: object
          required:
            - links
            - data
          properties:
            links:
              type: object
              required:
                - related
              properties:
                related:
                  format: url
                  example: >-
                    https://api.zerion.io/v1/fungibles/0x111c47865ade3b172a928df8f990bc7f2a3b9aaa
            data:
              type: object
              required:
                - type
                - id
              properties:
                type:
                  type: string
                  example: fungibles
                id:
                  type: string
                  example: '0x111c47865ade3b172a928df8f990bc7f2a3b9aaa'
        dapp:
          $ref: '#/components/schemas/Relationship-2'
    EncryptedQuantity:
      type: object
      additionalProperties: false
      required:
        - handle
      description: >
        Opaque encrypted quantity, present only for clients enabled to receive
        encrypted values.

        Its presence means the quantity is unknown, not a measured zero balance.

        Where a quantity field is required, its numeric components remain zero
        compatibility placeholders and must not be used to infer a balance or
        value.

        The corresponding position or transfer value is null; public asset unit
        prices remain available.
      properties:
        handle:
          type: string
          pattern: ^0x[0-9a-f]{64}$
          description: >-
            Opaque 32-byte ciphertext handle encoded as lowercase hexadecimal
            with a 0x prefix.
    Quantity:
      type: object
      required:
        - int
        - decimals
        - float
        - numeric
      properties:
        int:
          type: string
          description: >-
            Objective onchain raw amount in base units. Use this value for
            building onchain transactions.
          example: '12345678'
        decimals:
          type: integer
          description: >-
            Decimal number precision of the quantity - digits after the floating
            point.
          example: 5
        float:
          type: number
          format: float
          description: >-
            Ready-to-display value = int / 10^decimals. For Token-2022
            ScaledUiAmount assets (a small subset of Solana tokens), the display
            value is int × multiplier / 10^decimals.
          example: 123.45678
        numeric:
          type: string
          description: >-
            Ready-to-display value = int / 10^decimals. For Token-2022
            ScaledUiAmount assets (a small subset of Solana tokens), the display
            value is int × multiplier / 10^decimals.
          example: '123.45678'
    Change-2:
      type: object
      description: Position changes
      required:
        - absolute_1d
        - percent_1d
      properties:
        absolute_1d:
          type: number
          format: float
          description: Daily absolute position change value
          example: 0.272309794
        percent_1d:
          type: number
          format: float
          description: Daily position change percent
          example: 5.326512552079021
    Info:
      type: object
      required:
        - name
        - symbol
        - icon
        - flags
        - implementations
      properties:
        id:
          type: string
          description: Unique identifier of the fungible asset.
          example: 0230395c-2b01-46d8-b2d6-ce8121d51f9e
        name:
          type: string
          description: Displayable name of the fungible fungible.
          example: Bankless BED Index
        symbol:
          type: string
          description: Displayable symbol of the fungible fungible.
          example: BED
        asset_class:
          $ref: '#/components/schemas/AssetClass'
        description:
          type: string
          nullable: true
          description: >-
            Brief description of the fungible. Currently available at
            transaction callback notifications only.
          example: The BED index is meant to track crypto’s top 3 investab.
        icon:
          type: object
          allOf:
            - $ref: '#/components/schemas/Icon'
          nullable: true
        flags:
          $ref: '#/components/schemas/Flags'
        implementations:
          type: array
          description: Implementation details of the fungible on various chains.
          items:
            $ref: '#/components/schemas/Implementation'
        market_data:
          type: object
          allOf:
            - $ref: '#/components/schemas/MarketData'
          nullable: true
          description: >-
            Market data for the fungible, including price, supply, and market
            cap information. Currently available at transaction callback
            notifications only.
    Flags-2:
      type: object
      required:
        - displayable
      properties:
        displayable:
          type: boolean
          description: >
            Whether to show this position and count it in wallet totals. `false`
            marks a token that is left out of totals, such as a share token held
            for a protocol position, or spam. Positions with `false` are still
            returned.
          example: true
        is_trash:
          type: boolean
          description: Is the position classified by Zerion as spam.
    DAppInfo:
      type: object
      properties:
        name:
          type: string
          example: AAVE
          description: >
            Human readable representation of DApp. That offers more intuitive
            understanding for users.


            Note: only available for positions within protocols.
        icon:
          $ref: '#/components/schemas/Icon'
        url:
          type: string
          format: url
          description: URL of the DApp the position relates to.
          example: https://app.aave.com/
    Receipt:
      type: object
      description: >
        Token representing a DeFi position.


        A position carries either `fungible_info` or `nft_info`, never both.
        `fungible_info` is a share token the wallet holds for the position, such
        as an LP token, an aToken or a vault share. `nft_info` is the LP NFT of
        a Uniswap V3 or V4 liquidity position.


        The position's own `quantity` and `value` are the underlying asset.
        `receipt.quantity` is the amount of the share token. Positions that
        share a `group_id`, such as the legs of a liquidity pool, can each carry
        the same receipt. Count it once per `group_id`.


        To deduplicate wallet rows against receipts, see [Deduplicating share
        tokens](https://developers.zerion.io/recipes/defi-positions#deduplicating-share-tokens).
      properties:
        fungible_info:
          $ref: '#/components/schemas/Info'
        nft_info:
          $ref: '#/components/schemas/ReceiptNftInfo'
        quantity:
          allOf:
            - $ref: '#/components/schemas/Quantity'
          description: >
            Amount of the receipt token the wallet holds, such as a vault share
            count. `int` is the raw onchain amount in base units.


            Present only alongside `fungible_info`. Omitted when the amount is
            unavailable, zero or encrypted, so a receipt without `quantity`
            makes no balance claim.
    Relationship:
      type: object
      required:
        - links
        - data
      properties:
        links:
          $ref: '#/components/schemas/RelationshipLinks'
        data:
          $ref: '#/components/schemas/ContainerShort'
    Relationship-2:
      type: object
      required:
        - data
      properties:
        data:
          $ref: '#/components/schemas/ContainerShort-2'
    AssetClass:
      type: string
      description: >-
        Asset classification for the fungible: tokenized real-world assets and
        stablecoins. A paid add-on, enabled per organization, returned on `GET
        /v1/fungibles/`, `GET /v1/fungibles/{fungible_id}`, `GET
        /v1/fungibles/by-implementation`, and on the `fungible_info` of `GET
        /v1/wallets/{address}/positions/` and `GET
        /v1/wallet-sets/{wallet_set_id}/positions/`, only for organizations that
        have it. The `fungible_info` of a transaction (transfers, fees,
        approvals, refunds) never carries it. Omitted when the fungible is
        unclassified or its classification has been cleared. Absence does not
        mean the fungible is not an RWA. The value `unknown` is different from
        absence: it is a positive classification: the fungible is a likely RWA,
        with the specific class still pending.
      enum:
        - commodity
        - tokenized_stock
        - tokenized_treasury
        - stablecoin
        - other_financial
        - other_non_financial
        - unknown
      x-enum-descriptions:
        commodity: Tokenized commodities (e.g. gold).
        tokenized_stock: Tokenized equities, including tokenized ETFs.
        tokenized_treasury: Tokenized treasury and government-debt products.
        stablecoin: Fiat-pegged stablecoins.
        other_financial: >-
          Financial instruments outside the classes above (e.g. funds, bonds,
          private credit).
        other_non_financial: >-
          Non-financial real-world assets (e.g. tokenized real estate, carbon
          credits, collectibles).
        unknown: Identified as a likely RWA, specific class still pending.
    Icon:
      type: object
      description: Icon related to object.
      properties:
        url:
          type: string
          nullable: true
          format: url
          description: URL of the icon.
          example: >-
            https://token-icons.s3.amazonaws.com/0x0391d2021f89dc339f60fff84546ea23e337750f.png
    Flags:
      type: object
      required:
        - verified
      properties:
        verified:
          type: boolean
          description: Whether this fungible verified or not
          example: true
    Implementation:
      type: object
      required:
        - chain_id
        - decimals
      properties:
        chain_id:
          type: string
          description: Unique id of the chain.
          example: ethereum
        address:
          type: string
          nullable: true
          description: >-
            Implementation address on the chain. `null` for the chain's native
            asset (for example ETH on Ethereum, HYPE on HyperEVM), which has no
            contract address.
          example: '0x2af1df3ab0ab157e1e2ad8f88a7d04fbea0c7dc6'
        decimals:
          type: integer
          description: Number of decimals points of the implementation.
          example: 18
    MarketData:
      type: object
      required:
        - price
      properties:
        total_supply:
          type: number
          format: double
          description: Total market supply of fungible
          example: 29905.762448515918
        circulating_supply:
          type: number
          format: double
          description: Circulating value of fungible
          example: 29905.762448515918
        fully_diluted_valuation:
          type: number
          format: double
          description: Total market capitalization of fungible in selected currency
          example: 3196313.736038149
        market_cap:
          type: number
          format: double
          description: Circulating market capitalization of fungible in selected currency
          example: 3196313.736038149
        price:
          type: number
          nullable: true
          format: double
          description: Latest fungible price
          example: 106.87952669793131
        changes:
          $ref: '#/components/schemas/MarketDataChanges'
        trading_volumes:
          $ref: '#/components/schemas/TradingVolumes'
    ReceiptNftInfo:
      type: object
      description: >
        The LP NFT that backs this position, present on Uniswap V3 and V4
        liquidity positions.


        Join `contract_address` and `token_id` with a colon to get the value the
        balance-chart endpoints accept in `filter[pool_addresses]` and
        `filter[exclude_pool_addresses]`, e.g.
        `0xc36442b4a4522e871399cd717abdd847ab11fe88:1303743`.
      properties:
        chain_id:
          type: string
          description: Chain the LP NFT is held on.
          example: ethereum
        contract_address:
          type: string
          description: Address of the position-manager contract that issued the LP NFT.
          example: '0xc36442b4a4522e871399cd717abdd847ab11fe88'
        token_id:
          type: string
          description: >-
            ERC-721 token ID of the LP NFT. It must be the canonical decimal
            representation of an unsigned 256-bit integer: one or more decimal
            digits, no leading zeros, and a value from `0` through `2^256 - 1`
            (`115792089237316195423570985008687907853269984665640564039457584007913129639935`),
            inclusive. The balance-chart pool filters return `400` for token IDs
            that do not meet these requirements.
          example: '1303743'
    RelationshipLinks:
      type: object
      required:
        - related
      properties:
        related:
          type: string
          format: url
          description: URL to the current chain.
          example: https://api.zerion.io/v1/chains/polygon
    ContainerShort:
      type: object
      required:
        - type
        - id
      properties:
        type:
          type: string
          description: Chain resource type.
          example: chains
        id:
          type: string
          description: Chain unique identifier.
          example: polygon
    ContainerShort-2:
      type: object
      required:
        - type
        - id
      properties:
        type:
          type: string
          description: Decentralized application resource type.
          example: dapps
        id:
          type: string
          description: Decentralized application ID
          example: aave-v3
    MarketDataChanges:
      type: object
      properties:
        percent_1d:
          type: number
          nullable: true
          format: double
          description: Price relative change in percent for 1 day
          example: -0.7379066649086338
        percent_30d:
          type: number
          nullable: true
          format: double
          description: Price relative change in percent for 30 days
          example: -2.499465618806962
        percent_90d:
          type: number
          nullable: true
          format: double
          description: Price relative change in percent for 90 days
          example: 11.316340269371775
        percent_365d:
          type: number
          nullable: true
          format: double
          description: Price relative change in percent for 1 year
          example: null
    TradingVolumes:
      type: object
      properties:
        volume_1d:
          type: number
          format: double
          description: Trading volume over the last 24 hours in the selected currency.
          example: 40096375.69294812
  responses:
    PositionsListResponse-2:
      description: Response for requested list of positions
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Response-11'
    MalformedParameters:
      description: Parameters are malformed
      content:
        application/json:
          schema:
            type: object
            properties:
              errors:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                      description: Error short title
                      example: Parameter is malformed
                    detail:
                      type: string
                      description: Long description of the error
                      example: Some validation errors will be described here
    UnauthenticatedError:
      description: Unathenticated request
      content:
        application/json:
          schema:
            type: object
            properties:
              errors:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                      description: Error short title
                      example: Unauthorized Error
                    detail:
                      type: string
                      description: Long description of the error
                      example: >-
                        The API key is invalid, please, make sure that you are
                        using a valid key
    TooManyRequests:
      description: Too many requests error
      content:
        application/json:
          schema:
            type: object
            properties:
              errors:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                      description: Error short title
                      example: Too many requests
                    detail:
                      type: string
                      description: Long description of the error
                      example: Your request had been throttled
  securitySchemes:
    APIKeyBasicAuth:
      type: http
      scheme: basic
      description: >-
        To test endpoints here, paste your API key from the
        [Dashboard](https://dashboard.zerion.io/) into the username field and
        leave the password empty.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.