Free Short Interest API
FINRA consolidated short interest as clean JSON. Biweekly settlement data for every US-listed symbol: short quantity, average daily volume, days to cover, and the change from the prior report.
Endpoints
/api/markets/short-interest?symbol=GMEWithout symbol: latest settlement, top 100 by days to cover. With symbol: full biweekly history for that symbol.
/api/markets/short-interest/csvLatest settlement snapshot, all symbols, as CSV.
Example
import requests
r = requests.get("https://xoomar.com/api/markets/short-interest", params={"symbol": "TSLA"})
for report in r.json()["data"][:6]:
print(report["settlementDate"], report["daysToCover"])Response Shape
Every endpoint returns the same JSON envelope: { data, updatedAt, source, docs }. The data field is an array of records with these fields:
| Field | Type | Description |
|---|---|---|
| settlementDate | string (date) | FINRA settlement date (~15th and month-end) |
| symbol | string | Ticker symbol |
| shortQty | number | null | Total shares held short |
| avgDailyVol | number | null | Average daily trading volume |
| daysToCover | string | null | shortQty / avgDailyVol, FINRA-computed |
| changePct | string | null | Change in short quantity vs the prior report |
The hub endpoint filters for average daily volume above 100k to keep days-to-cover meaningful; per-symbol history is unfiltered.
Numeric values arrive as strings where precision matters (prices, rates); parse with your language's decimal type for accounting-grade math. Rate limiting is fair-use per IP; a 429 response includes a Retry-After header. No authentication or API key needed. Attribution is appreciated: xoomar.com/markets.
Need more headroom? A free account raises your limit to 120 requests a minute with an X-API-Key header.
Frequently Asked Questions
Where does the data come from?
How much history is available?
Why is short interest delayed?
What are the rate limits?
Data on this page is provided for informational purposes only and is not financial advice. See our editorial policy.