Hyperbeat
  • About Hyperbeat
    • Core contributors
  • Hyperbeat Earn
    • HYPE Vault
    • UBTC Vault
    • USDT Vault
    • Morphobeat Vaults
      • HYPE
      • USDT0
      • USDe
      • UETH
  • Hyperbeat Borrow
    • Collateral Assets
  • Hyperbeat Staking
    • Hyperbeat Public RPC Node
  • Hyperfolio API
  • Hearts
    • Referral Program
  • Resources
    • Audits
    • Addresses
    • Brand kit
Powered by GitBook
On this page
  • Hyperfolio API
  • 🔑 Authentication
  • 📚 Endpoints Overview
  • Wallet
  • Positions
  • NFTs
  • Points
  • Vaults
Export as PDF

Hyperfolio API

Hyperfolio API is an onchain HyperEVM portfolio tracking API designed to support builder use cases.

PreviousHyperbeat Public RPC NodeNextHearts

Last updated 1 day ago

Hyperfolio API

Base URL: https://api.hyperfolio.xyz

You can find the full doc here:

Get your protocol integrated by


🔑 Authentication

All endpoints require an API key via the x-api-key header.

  • How to get an API key? Contact:

  • Rate limits: We provide different plans (beta, standard, pro, admin). Contact us for details.


📚 Endpoints Overview

Wallet

GET /wallet/composition?address=... Get the list of tokens and the total wallet value for a given address.

  • Query params:

    • address (string, required): Wallet address

  • Response:

{
  "tokens": [
    {
      "address": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
      "balance": "0.4204762016985897",
      "balance_value": "420476201698589664",
      "chain": "eth",
      "decimals": 18,
      "fxBase": "USD",
      "fxPrice": 2585.27,
      "fxValue": 1087.05,
      "name": "ETH",
      "native": true,
      "symbol": "ETH",
      "tokenLogoUrl": "https://static.debank.com/image/token/logo_url/0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee/935ae4e4d1d12d59a99717a24f2540b5.png",
      "type": "spot",
      "usdPrice": 2585.27,
      "usdValue": 1087.05
    }
  ],
  "totalWalletValue": 1087.05
}
  • Errors:

    • 400: Missing address parameter

    • 429: Rate limit exceeded


Positions

GET /positions?address=... Get all DeFi positions by protocol for a given address.

  • Query params:

    • address (string, required): Wallet address

  • Response:

    Copy

    {
      "id": "hyperlend",
      "name": "HyperLend",
      "logo": "/logos/hyperlend.png",
      "url": "https://app.hyperlend.org",
      "totalValueUSD": "1234.56",
      "positions": [
        {
          "id": "hl-1",
          "protocolId": "hyperlend",
          "protocolName": "HyperLend",
          "type": "lending",
          "positionType": "supplied",
          "totalValueUSD": "123.45",
          "healthRatio": 1.23,
          "version": "v1",
          "isIsolated": false,
          "details": {
            "token": {
              "address": "0x...",
              "symbol": "HYPE",
              "name": "HyperEVM",
              "image_url": "/hype.png",
              "decimals": 18,
              "balance": "1000000000000000000",
              "formattedBalance": "1.00",
              "usdValue": "123.45"
            }
          }
        }
      ]
    }

GET /positions/protocol?walletAddress=...&protocol=... Get positions for a specific protocol and address.

  • Query params:

    • walletAddress (string, required): Wallet address

    • protocol (enum, required): One of hyperlend, hyperswap_v3, hyperbeat, felix, hyperswap_v2, hypurrfi, keiko, kittenswap, laminar, sentiment, timeswap, valantis

  • Response: Same as /positions

  • Errors:

    • 400: Missing walletAddress or protocol parameter

    • 429: Rate limit exceeded


NFTs

GET /nfts?address=... Get NFTs and their total value for a wallet address.

  • Query params:

    • address (string, required): Wallet address

  • Response:

    Copy

    {
      "nfts": [
        {
          "contract": "0x123...",
          "tokenId": "1",
          "name": "CryptoKitty #1",
          "image": "https://example.com/kitty1.png",
          "valueUSD": 123.45
        }
      ],
      "totalNftValue": 123.45
    }
  • Errors:

    • 400: Missing address parameter

    • 429: Rate limit exceeded


Points

GET /points?address=... Get DeFi points by protocol for a wallet address.

  • Query params:

    • address (string, required): Wallet address

  • Response:

    Copy

    [
      { "protocolName": "Hyperbeat", "points": 1234 },
      { "protocolName": "HyperLend", "points": 5678 }
    ]
  • Errors:

    • 400: Missing address parameter

    • 429: Rate limit exceeded


Vaults

GET /vaults?vaultAddress=...&user=...&action=yield Get earned yield for a vault for a given user. (Only hbUSDT supported for now)

  • Query params:

    • vaultAddress (string, required): Vault address

    • user (string, required): User address

    • action (enum, required): Only "yield" is supported

  • Response (midas vault):

    Copy

    {
      "yield": {
        "totalYield": 1.45,
        "totalAmountDeposited": 1000,
        "totalAmountWithdrawn": 400,
        "currentPositionValue": 600
      }
    }
  • Errors:

    • 400: Missing vaultAddress, user, or action parameter

    • 429: Rate limit exceeded


🛡️ Security

  • All endpoints require the x-api-key header.

  • Keys are personal and rate-limited.

  • Never share your API key.


📖 Full API Reference



See the interactive documentation and all response examples at 👉

Contact:

For more details on each endpoint, error codes, and advanced usage, refer to the .

https://api.hyperfolio.xyz/docs
filling in this form
stableapy@hyperbeat.org
https://api.hyperfolio.xyz/docs
stableapy@hyperbeat.org
Swagger UI