XOOMAR

Free Open Interest API

Open interest history for the tracked crypto perpetuals, hourly and daily, from Binance. History starts in 2021; the free API returns the last six months. Live open interest on Binance, Bybit, OKX, Hyperliquid and Kraken comes with the funding rates API.

Endpoint

GET
/api/markets/open-interest/{slug}?period=1h|1d&from=ISO&to=ISO

Open interest history for a symbol, newest first: hourly by default, period=1d for daily averages, up to 5,000 rows.

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/open-interest/btc?period=1d"

Python

import requests

r = requests.get("https://xoomar.com/api/markets/open-interest/btc", params={"period": "1d"})
for row in r.json()["data"]:
    print(f"{row['ts']}: ${float(row['openInterestValue']):,.0f}")

JavaScript

const res = await fetch("https://xoomar.com/api/markets/open-interest/btc?period=1d");
const { data } = await res.json();
console.log(data.map(r => `${r.ts}: $${Number(r.openInterestValue).toLocaleString()}`));

Limits

  • The history is hourly, not tick data.
  • History starts in January 2021 for the major symbols; the free API returns the last six months.
  • The history is Binance only; live open interest per venue is in the funding rates API.
  • The long/short ratios are exchange-reported and null where a venue doesn't publish them.

Main features

  • Hourly open interest history from Binance, starting in January 2021; the free API returns the last six months.
  • Both contract count and USD notional per row, so you can chart either without a conversion.
  • Global long/short account ratio and top-trader position ratio where the exchange publishes them.
  • Up to 5,000 rows per call with from and to dates and a 1h or 1d period.
  • The same data as the open interest dashboards; what you see on the page is what the API returns.

Example

Request

curl "https://xoomar.com/api/markets/open-interest/btc?period=1d"

Response, live at 2026-10-17 15:48 UTC, trimmed

{
  "data": [
    {
      "ts": "2026-10-17T00:00:00.000Z",
      "openInterest": "94190.573375000000",
      "openInterestValue": "7681552260.74794375",
      "longShortRatio": "1.7107687500000000",
      "exchange": "binance"
    },
    {
      "ts": "2026-10-16T00:00:00.000Z",
      "openInterest": "94719.496833333333",
      "openInterestValue": "7758877480.99983333",
      "longShortRatio": "1.5982666666666667",
      "exchange": "binance"
    }
  ],
  "updatedAt": "2026-10-17T15:48:29.495Z",
  "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",
    "sourceAttribution": "Open interest history: Binance.",
    "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."
  }
}

One row per symbol, venue and hour; a later correction replaces the row. openInterest is in contracts, openInterestValue in USD.

What people build with it

OI and price charts

Plot day-over-day open interest next to your own price data to see whether a move came with new positions or closed ones.

Leverage research

Hourly open interest shows how leverage builds and unwinds around each move.

Venue comparison

The funding rates endpoint carries each venue's current open interest, so one call compares the five venues side by side.

Dashboards

One call per symbol fills a daily or hourly open interest chart.

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
exchangestringbinance (hourly history)
tsstringObservation hour (ISO timestamp)
openIntereststring | nullOpen interest in contracts
openInterestValuestring | nullOpen interest notional in USD
longShortRatiostring | nullGlobal long/short account ratio where available
topTraderRatiostring | nullTop trader long/short positions ratio where available

Query params: period=1h or 1d (default 1h), from and to as ISO dates. History starts in 2021 for the majors; the free API returns the last six months. Up to 5,000 rows per call.

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

How far back does OI history go?
History starts in 2021 for the major symbols; the free API returns the last six months.
What resolution is available?
Hourly (1h, the default) and daily (1d). Use the period query parameter.
Does it include the long/short ratio?
Where Binance publishes it: longShortRatio is the global long/short account ratio, and it's null for symbols without one.
Can I get OI for a specific date range?
Yes. Use the from and to query parameters with ISO date format (YYYY-MM-DD or full ISO timestamp).

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