Carry Oracle — API docs

Hourly funding for every perp on every Hyperliquid dex (main + HIP-3), kept beyond the 500 h the Hyperliquid API returns. Below: real responses from the latest hourly snapshot, truncated to a few rows (subscribers get every row, in real time).

Free trial key: POST /v1/keys/trial {"email":"you@example.com"} → dsi_trial_…, 200 calls, 7 days, no card (or the form on /carry). Leaderboard (public, 1 h delay): /carry/leaderboard.

Access: header X-API-KEY: dsi_carry_…. Price: US$100/month flat, unlimited calls. Card: /v1/carry/checkout · USDC (x402, Base or Solana): POST /v1/keys/x402/carry_month = 30 days. MCP tools carry_* at /mcp. Without a key every route answers 402 with how to pay. Free: /v1/carry/stats. Product page: /carry.

Query parameters: funding-matrix ?dex=xyz&min_vol= · xdex / spot-perp ?min_vol=100000&limit=50 · history /{coin}?hours=720 (HIP-3 coins prefixed, e.g. xyz:NBIS) · naked ?min_abs_apr=0.5&min_vol=.

GET /v1/carry/funding-matrix

{
  "as_of": "2026-10-05T03:00:00.000Z",
  "count": 118,
  "items": [
    {
      "coin": "xyz:EWZ",
      "dex": "xyz",
      "base": "EWZ",
      "funding_1h": 0.0002977646,
      "funding_apr": 2.6084,
      "mark": 40.145,
      "oi_usd": 6650398,
      "vol24_usd": 3437125,
      "spot": null
    },
    {
      "coin": "xyz:BB",
      "dex": "xyz",
      "base": "BB",
      "funding_1h": -0.0001712847,
      "funding_apr": -1.5005,
      "mark": 9.3053,
      "oi_usd": 14764606,
      "vol24_usd": 3399274,
      "spot": null
    },
    {
      "coin": "SPX",
      "dex": "main",
      "base": "SPX",
      "funding_1h": 0.0001550938,
      "funding_apr": 1.3586,
      "mark": 0.4524,
      "oi_usd": 8612122,
      "vol24_usd": 1135383,
      "spot": null
    },
    {
      "coin": "xyz:SMSN",
      "dex": "xyz",
      "base": "SMSN",
      "funding_1h": -0.000147486,
      "funding_apr": -1.292,
      "mark": 205.87,
      "oi_usd": 29656021,
      "vol24_usd": 5190350,
      "spot": null
    }
  ],
  "disclaimer": "Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento."
}

GET /v1/carry/xdex

{
  "as_of": "2026-10-05T03:00:00.000Z",
  "delay_h": 0,
  "count": 5,
  "items": [
    {
      "base": "UNITREE",
      "legs": [
        {
          "coin": "para:UNITREE",
          "dex": "para",
          "funding_apr": 0.5011,
          "funding_apr_14d": 0.6559,
          "hours_positive_14d": 0.77,
          "hours_14d": 336,
          "vol24_usd": 151083,
          "oi_usd": 1671293,
          "mark": 67.2428
        },
        {
          "coin": "xyz:UNITREE",
          "dex": "xyz",
          "funding_apr": 0.0548,
          "funding_apr_14d": 0.0922,
          "hours_positive_14d": 0.74,
          "hours_14d": 336,
          "vol24_usd": 329475,
          "oi_usd": 19750095,
          "mark": 68.284
        }
      ],
      "spread_apr_now": 0.4463,
      "spread_apr_14d": 0.5637,
      "basis_pct": -1.525,
      "min_leg_vol24_usd": 151083
    },
    {
      "base": "SNDK",
      "legs": [
        {
          "coin": "xyz:SNDK",
          "dex": "xyz",
          "funding_apr": 0.1471,
          "funding_apr_14d": 0.0628,
          "hours_positive_14d": 0.91,
          "hours_14d": 336,
          "vol24_usd": 10289779,
          "oi_usd": 147881500,
          "mark": 1728.9
        },
        {
          "coin": "io:SNDK",
          "dex": "io",
          "funding_apr": 0.1308,
          "funding_apr_14d": 0.0071,
          "hours_positive_14d": 0.76,
          "hours_14d": 336,
          "vol24_usd": 10954999,
          "oi_usd": 5821559,
          "mark": 1729.4
        }
      ],
      "spread_apr_now": 0.0163,
      "spread_apr_14d": 0.0557,
      "basis_pct": -0.029,
      "min_leg_vol24_usd": 10289779
    }
  ],
  "disclaimer": "Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento."
}

GET /v1/carry/spot-perp

{
  "as_of": "2026-10-05T03:00:00.000Z",
  "count": 10,
  "items": [
    {
      "base": "PURR",
      "perp": "PURR",
      "funding_apr": 0.1095,
      "funding_apr_14d": 0.3549,
      "hours_positive_14d": 1,
      "hours_14d": 336,
      "perp_mark": 0.17083,
      "spot_mark": 0.17101,
      "spot_pair": "PURR/USDC",
      "basis_pct": -0.105,
      "perp_vol24_usd": 818741,
      "spot_vol24_usd": 1202815,
      "oi_usd": 20993405
    },
    {
      "base": "FARTCOIN",
      "perp": "FARTCOIN",
      "funding_apr": 0.139,
      "funding_apr_14d": 0.2501,
      "hours_positive_14d": 0.99,
      "hours_14d": 336,
      "perp_mark": 0.18624,
      "spot_mark": 0.18621,
      "spot_pair": "@162",
      "basis_pct": 0.016,
      "perp_vol24_usd": 7456833,
      "spot_vol24_usd": 109071,
      "oi_usd": 40108353
    },
    {
      "base": "XPL",
      "perp": "XPL",
      "funding_apr": 0.1095,
      "funding_apr_14d": 0.2338,
      "hours_positive_14d": 1,
      "hours_14d": 336,
      "perp_mark": 0.096053,
      "spot_mark": 0.096053,
      "spot_pair": "@210",
      "basis_pct": 0,
      "perp_vol24_usd": 7653853,
      "spot_vol24_usd": 371394,
      "oi_usd": 91940318
    }
  ],
  "disclaimer": "Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento."
}

GET /v1/carry/history/BTC?hours=4

{
  "coin": "BTC",
  "dex": "main",
  "base": "BTC",
  "hours": 4,
  "items": [
    {
      "at": "2026-10-05T00:00:00.000Z",
      "funding_1h": 0.0000125,
      "funding_apr": 0.1095,
      "premium": -0.0002390309,
      "mark": 86578,
      "oi_usd": 3258685003,
      "vol24_usd": 1149284942,
      "src": "snapshot"
    },
    {
      "at": "2026-10-05T01:00:00.000Z",
      "funding_1h": 0.0000125,
      "funding_apr": 0.1095,
      "premium": -0.0000635842,
      "mark": 86482,
      "oi_usd": 3276674764,
      "vol24_usd": 1188035073,
      "src": "snapshot"
    },
    {
      "at": "2026-10-05T02:00:00.000Z",
      "funding_1h": 0.0000125,
      "funding_apr": 0.1095,
      "premium": -0.0001847895,
      "mark": 86565.4,
      "oi_usd": 3270088730,
      "vol24_usd": 1306112025,
      "src": "snapshot"
    },
    {
      "at": "2026-10-05T03:00:00.000Z",
      "funding_1h": 0.0000125,
      "funding_apr": 0.1095,
      "premium": -0.0001884278,
      "mark": 86481.8,
      "oi_usd": 3234595451,
      "vol24_usd": 1379823311,
      "src": "snapshot"
    }
  ]
}

GET /v1/carry/naked

{
  "as_of": "2026-10-05T03:00:00.000Z",
  "threshold_apr": 0.5,
  "count": 31,
  "items": [
    {
      "coin": "io:TCNT",
      "dex": "io",
      "funding_apr_now": 2.6282,
      "funding_apr_14d": 1.3141,
      "hours_above_threshold_14d": 1,
      "hours_14d": 2,
      "oi_usd": 13868,
      "vol24h_usd": 10227,
      "why_no_hedge": "no_spot_no_xdex_pair"
    },
    {
      "coin": "xyz:EWZ",
      "dex": "xyz",
      "funding_apr_now": 2.6084,
      "funding_apr_14d": 0.2884,
      "hours_above_threshold_14d": 96,
      "hours_14d": 336,
      "oi_usd": 6650398,
      "vol24h_usd": 3437125,
      "why_no_hedge": "no_spot_no_xdex_pair"
    },
    {
      "coin": "xyz:PURRDAT",
      "dex": "xyz",
      "funding_apr_now": 2.3457,
      "funding_apr_14d": 0.2373,
      "hours_above_threshold_14d": 152,
      "hours_14d": 336,
      "oi_usd": 17566096,
      "vol24h_usd": 528706,
      "why_no_hedge": "no_spot_no_xdex_pair"
    }
  ],
  "disclaimer": "Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento."
}

GET /v1/carry/watchdog

{
  "as_of": "2026-10-05T03:00:00.000Z",
  "note": "7-day changes need 7 days of hourly snapshots (recorded since 2026-10-03); null until then.",
  "dexes": [
    {
      "dex": "main",
      "markets": 234,
      "active": 178,
      "zero_oi": 0,
      "delisted": 56,
      "oi_usd": 13164309070,
      "vol24h_usd": 3246439020,
      "risk_flags": []
    },
    {
      "dex": "xyz",
      "markets": 130,
      "active": 110,
      "zero_oi": 0,
      "delisted": 20,
      "oi_usd": 3835392944,
      "vol24h_usd": 564128474,
      "risk_flags": []
    },
    {
      "dex": "io",
      "markets": 11,
      "active": 9,
      "zero_oi": 0,
      "delisted": 2,
      "oi_usd": 60405089,
      "vol24h_usd": 21287425,
      "risk_flags": []
    },
    {
      "dex": "para",
      "markets": 37,
      "active": 29,
      "zero_oi": 0,
      "delisted": 8,
      "oi_usd": 23326949,
      "vol24h_usd": 3904582,
      "risk_flags": []
    },
    {
      "dex": "mkts",
      "markets": 24,
      "active": 5,
      "zero_oi": 0,
      "delisted": 19,
      "oi_usd": 9339319,
      "vol24h_usd": 1386632,
      "risk_flags": []
    },
    {
      "dex": "flx",
      "markets": 16,
      "active": 0,
      "zero_oi": 0,
      "delisted": 16,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    },
    {
      "dex": "vntl",
      "markets": 15,
      "active": 0,
      "zero_oi": 0,
      "delisted": 15,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    },
    {
      "dex": "hyna",
      "markets": 25,
      "active": 0,
      "zero_oi": 0,
      "delisted": 25,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    },
    {
      "dex": "km",
      "markets": 23,
      "active": 0,
      "zero_oi": 0,
      "delisted": 23,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    },
    {
      "dex": "abcd",
      "markets": 1,
      "active": 0,
      "zero_oi": 0,
      "delisted": 1,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    },
    {
      "dex": "cash",
      "markets": 17,
      "active": 0,
      "zero_oi": 0,
      "delisted": 17,
      "oi_usd": 0,
      "vol24h_usd": 0,
      "risk_flags": [
        "dex_no_active_markets"
      ]
    }
  ],
  "markets": [
    {
      "coin": "BTC",
      "dex": "main",
      "status": "active",
      "growth_mode": null,
      "max_leverage": 40,
      "oi_usd": 3234595451,
      "oi_change_7d_pct": null,
      "vol24h_usd": 1379823311,
      "vol_change_7d_pct": null,
      "last_funding_at": "2026-10-05T03:00:00.000Z",
      "tracked_since": "2026-10-04T00:00:00.000Z",
      "risk_flags": []
    },
    {
      "coin": "ETH",
      "dex": "main",
      "status": "active",
      "growth_mode": null,
      "max_leverage": 25,
      "oi_usd": 3236034934,
      "oi_change_7d_pct": null,
      "vol24h_usd": 496219919,
      "vol_change_7d_pct": null,
      "last_funding_at": "2026-10-05T03:00:00.000Z",
      "tracked_since": "2026-10-04T00:00:00.000Z",
      "risk_flags": []
    },
    {
      "coin": "HYPE",
      "dex": "main",
      "status": "active",
      "growth_mode": null,
      "max_leverage": 10,
      "oi_usd": 1848924164,
      "oi_change_7d_pct": null,
      "vol24h_usd": 232478482,
      "vol_change_7d_pct": null,
      "last_funding_at": "2026-10-05T03:00:00.000Z",
      "tracked_since": "2026-10-04T00:00:00.000Z",
      "risk_flags": []
    }
  ],
  "disclaimer": "Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento."
}

Pay per call (USDC, x402) — no subscription

routeUS$ per callprepaid-pack credits
funding-matrix0.0330
xdex0.0550
spot-perp0.0330
history/{coin}0.0220
naked0.0110
watchdog0.0110

Call without a key, answer the 402 with USDC on Base or Solana. Around 3,000 calls/month the flat US$100 subscription is cheaper.

Carry Desk routes (subscription only: US$450/month · US$4,500/year · limited seats)

Method

Field dictionary

fieldmeaningunitsource
funding_1hfunding rate paid per hour (positive: longs pay shorts)fraction per hourHyperliquid metaAndAssetCtxs / fundingHistory
funding_apr / funding_apr_nowfunding_1h × 24 × 365fraction (0.31 = 31 % a year)derived
funding_apr_14dmean hourly funding over the last 336 h, annualisedfractionour hourly history
hours_positive_14dshare of the last 336 h with positive funding0–1our hourly history
spread_apr_now / spread_apr_14dfunding of the highest-funding leg minus the lowest (xdex)fractionderived
basis_pctmark of the first leg / mark of the second − 1 (xdex), or perp / spot − 1 (spot-perp)%markPx
min_leg_vol24_usd24 h notional volume of the thinner legUSDdayNtlVlm
oi_usdopen interest × markUSDopenInterest × markPx
vol24_usd / vol24h_usd24 h notional volumeUSDdayNtlVlm
spot.mark / spot_markspot price of the same asset (U-tokens mapped: UBTC→BTC, UETH→ETH…)USDspotMetaAndAssetCtxs
hours_above_threshold_14dhours in the last 336 with |funding| above the threshold (naked)hoursour hourly history
why_no_hedgeno_spot (main dex) or no_spot_no_xdex_pair (HIP-3)enumderived
statusactive · zero_oi · delisted (watchdog)enummeta + our snapshots
oi_change_7d_pct / vol_change_7d_pctchange versus the snapshot 7 days earlier (null until 7 days of snapshots exist)%our snapshots
srcsnapshot (recorded by us at :03 every hour) or history (recovered from Hyperliquid's 500 h window)enum—

Every value can be checked against Hyperliquid's public API. Marbella Collins LLC · contact@degenscan.io · Market data and analytics only — not a signal, not investment advice. Informação e análise, não é recomendação de investimento.