XOOMAR

Free Funding Rates API

Live perpetual futures funding rates from Binance, Bybit, OKX, Hyperliquid and Kraken Futures. No API key, open CORS. Five venues, updated every 60 seconds.

Endpoints

GET
/api/markets/funding-rates

Current funding rates for every tracked symbol on all five venues.

GET
/api/markets/funding-rates/{slug}?history=30d|1y|all

One symbol's current rate on every venue, plus settled history when you pass history (up to 5,000 settlements across venues, newest first).

Rate Limit

10 requests a minute without a key, 30 with a free key

CORS

Open (*)

Auth

Optional X-API-Key header

Examples

curl

curl https://xoomar.com/api/markets/funding-rates

Python

import requests

r = requests.get("https://xoomar.com/api/markets/funding-rates")
data = r.json()["data"]
for row in data:
    print(f"{row['baseAsset']} {row['exchange']}: {row['fundingRate']}")

JavaScript

const res = await fetch("https://xoomar.com/api/markets/funding-rates");
const { data } = await res.json();
console.log(data);

Limits

  • Snapshots update every 60 seconds. This is NOT tick-level data.
  • Settled funding history starts in 2019 for the major pairs on Binance.
  • Not suitable for HFT or sub-second strategies.
  • 10 requests a minute without a key, 30 with a free key.

Main features

  • Live funding rates for every tracked perpetual on five venues, updated every 60 seconds; each row carries the rate as published, the settlement interval in hours, the 8-hour equivalent and the annualized figure.
  • Cross-venue comparison in one call: the same coin's rate on every venue side by side (use fundingRate8h to compare hourly and 8-hour venues).
  • Settled funding history on the per-symbol endpoint, up to 5,000 settlements a call.
  • Mark price, 24h price change, open interest and next funding time in the same row, so one request fills a dashboard widget.

Example

Request

curl "https://xoomar.com/api/markets/funding-rates"

Response, live at 2026-10-15 16:23 UTC, trimmed

{
  "data": [
    {
      "slug": "btc",
      "baseAsset": "BTC",
      "exchange": "okx",
      "markPrice": "82284.30000000",
      "fundingRate": "0.0000402047",
      "nextFundingTime": "2026-10-16T00:00:00.000Z",
      "openInterest": "30506.73620000",
      "openInterestValue": "2510405423.2452",
      "longShortRatio": null,
      "priceChangePct24h": "0.008705",
      "fundingIntervalHours": 8,
      "fundingRate8h": 0.0000402047,
      "fundingAnnualized": 0.044024
    },
    {
      "slug": "btc",
      "baseAsset": "BTC",
      "exchange": "hyperliquid",
      "markPrice": "82285.00000000",
      "fundingRate": "0.0000125000",
      "nextFundingTime": "2026-10-15T17:00:00.000Z",
      "openInterest": "39248.97738000",
      "openInterestValue": "3229602103.7133",
      "longShortRatio": null,
      "priceChangePct24h": "0.006988",
      "fundingIntervalHours": 1,
      "fundingRate8h": 0.0001,
      "fundingAnnualized": 0.1095
    }
  ],
  "updatedAt": "2026-10-15T16:23:06.283Z",
  "source": "xoomar.com",
  "docs": "https://xoomar.com/markets/api",
  "license": "https://xoomar.com/terms",
  "attribution": "Credit XOOMAR with a link to the dataset page on xoomar.com when you republish this data",
  "meta": {
    "source": "Binance, Bybit, OKX, Hyperliquid, Kraken Futures",
    "sourceAttribution": "Funding rate data: Binance, Bybit, OKX, Hyperliquid and Kraken Futures.",
    "notice": "10 requests a minute without a key, 30 with a free key. Get a free key at https://xoomar.com/signup?utm_source=api, register your app at https://xoomar.com/developers/register?utm_source=api, and credit the data as \"Data: XOOMAR\" together with the sourceAttribution line."
  }
}

openInterest can be null on some rows; treat it as nullable.

What people build with it

Cross-venue spread monitors

Compare the same coin's 8-hour-equivalent rate across the five venues and alert when the gap passes your own level.

Carry dashboards

Rank coins by annualized funding per venue; fundingAnnualized is in every row.

Research charts

Chart funding against your own price data to see when longs or shorts paid to hold their positions.

Bot inputs

MT4 and MT5 EAs and Python bots read the current rate and the next funding time before they act.

Fair use

No key needed to start. A 429 response carries a Retry-After header in seconds; cache responses on your side where you can. Need more volume? Write to info@xoomar.com.

Response shape

Every endpoint returns the same JSON envelope: { data, updatedAt, source, docs, license, attribution, meta }. In meta, source names who publishes the data and sourceAttribution is the credit line to show with it. The data field is an array of records with these fields:

FieldTypeDescription
slugstringSymbol slug used in URLs (btc, eth, sol...)
baseAssetstringBase asset ticker (BTC, ETH...)
exchangestringbinance, bybit, okx, hyperliquid or kraken
markPricestring | nullLatest mark price in USD
fundingRatestring | nullCurrent funding rate as published, a decimal per settlement interval (0.0001 = 0.01% per interval)
fundingIntervalHoursnumberHours per settlement: 8 (Binance, Bybit, OKX) or 1 (Hyperliquid, Kraken)
fundingRate8hnumber | nullThe rate scaled to eight hours, comparable across venues
fundingAnnualizednumber | nullAnnualized rate, simple (not compounded), from the rate and its funding interval
nextFundingTimestring | nullISO timestamp of the next funding settlement
openIntereststring | nullOpen interest in contracts
openInterestValuestring | nullOpen interest notional in USD
priceChangePct24hstring | null24h price change as a decimal
longShortRatiostring | nullGlobal long/short account ratio where the venue publishes it, else null

One row per symbol per exchange. The per-symbol endpoint /api/markets/funding-rates/{slug} returns { current, history }; history is null unless you pass history=30d, 1y or all, and holds up to 5,000 settlements, newest first.

Numeric fields typed string in the table carry exact decimals; parse them with your language's decimal type. No key needed to start: 10 requests a minute per IP without a key and 30 a minute with a free account key, with at least six months of history. A 429 response carries a Retry-After header in seconds. Credit XOOMAR with a link to the dataset page when you republish the data; the data terms are on the terms page.

A free account key raises the limit; send it in an X-API-Key header.

Frequently Asked Questions

Is the funding rate API really free?
Yes. No key needed to start: 10 requests a minute per IP without a key and 30 a minute with a free account key, with at least six months of history. The rates come from the exchanges' own public market data.
How often does the data update?
Every 60 seconds. Each response carries updatedAt, the time the response was built.
Can I use this in my trading bot?
Yes. Open CORS means it works from browsers, Node.js, Python, or any language. 10 requests a minute without a key, 30 with a free key. Cache on your side and poll at the settlement cadence, not faster.
What exchanges are covered?
Binance, Bybit and OKX USDT-margined perpetuals, Hyperliquid and Kraken Futures perpetuals. Binance, Bybit and OKX settle every 8 hours; Hyperliquid and Kraken settle every hour, so every row carries fundingIntervalHours, fundingRate8h and fundingAnnualized for comparisons.
How far back does the history go?
Settled funding history starts in 2019 for the major pairs on Binance. The per-symbol endpoint returns up to 5,000 settlements a call, newest first, with history=30d, 1y or all.

Data on this page is provided for informational purposes only and is not financial advice. See our editorial policy.