Free Short Interest Data API for US Stocks
Validate settlement dates, shares short, float, days-to-cover inputs, corporate actions, and revisions.

TL;DR
Short interest is the open short position at a designated settlement date. Daily short-sale volume is trading activity and cannot replace it.
Store settlement date, official publication date, and provider retrieval time separately. A value is not knowable in a backtest before publication.
Days to cover depends on an average-volume window; short percent of float depends on a float estimate and effective date. Preserve both inputs.
Ticker changes, splits, mergers, delistings, corrections, and provider backfills can break naive comparisons. Keep raw and adjusted views explicit.
What a free short interest data API should return
A useful short interest API JSON response needs enough context to compare one reporting cycle with another. Do not treat a single percentage without its denominator, date, and source as analysis-ready data.
FINRA reporting is tied to designated settlement dates and later publication dates. A provider can deliver the published file quickly, but it cannot turn that official position snapshot into real-time open interest. If a product advertises “live short interest,” determine whether it is an estimate, securities-lending signal, daily short volume, or the most recently published official observation.
| Field | Meaning | Validation |
|---|---|---|
ticker | Security identifier used by the endpoint. | Exchange and ticker mapping. |
settlement_date | Date to which the reported position applies. | Do not confuse it with publication time. |
short_interest | Shares sold short and not yet covered. | Units, adjustments, and missing values. |
avg_daily_volume | Volume baseline used for comparison. | Provider calculation window. |
days_to_cover | Short interest divided by average daily volume. | Recalculate when both inputs exist. |
publication_date | Date the reporting-cycle value became publicly available. | Required for point-in-time research; do not substitute settlement date. |
float_shares | Provider estimate of tradable public float used by short-percent-of-float. | Source, as-of date, share-class scope, and split adjustment. |
source_revision | Version or correction state of the published observation. | Whether history is overwritten, versioned, or backfilled. |
Short interest ratio API and days to cover
Providers sometimes use “short interest ratio” to mean days to cover. Read the data dictionary instead of assuming every ratio is short interest as a percentage of float.
Even when two providers both publish days to cover, they may use different average-volume windows, venues, or adjusted volumes. Recompute the ratio from stored inputs when possible, label the window, and do not rank securities across providers until the formulas are aligned.
Short interest is not short volume
Short volume records reported short-sale activity during a period. Short interest measures open positions on a settlement date. The two datasets answer different questions and should not be substituted.
A short sale can be closed the same day and therefore appear in daily short volume without remaining in the next position snapshot. Conversely, a short position opened earlier can remain in short interest without generating new short-sale volume that day. Off-exchange daily files are also not automatically a consolidated view of all venues.
How to choose a historical short interest data API
Check whether the free plan includes the short interest endpoint, which tickers are available, the request quota, history depth, and whether a credit card is required.
Confirm exchanges, active and delisted securities, earliest settlement date, update timing, and how corrections are handled.
Look for stable names, explicit null handling, pagination, date filters, units, split treatment, and a documented error model.
A free API key does not automatically grant redistribution rights. Review caching, display, commercial-use, attribution, and retention terms.
Use samples with a split, ticker change, multiple share classes, delisting, and merger. Determine whether historical short shares are raw or adjusted and whether the API keeps a stable security identifier beside ticker.
For each observation, require settlement date, publication date, retrieval time, and correction state. Replay a historical date and prove that the API does not expose a later correction or backfill as though it were known earlier.
Authority source and reporting context
For US reporting context, consult FINRA’s Short Interest Reporting guidance. An API provider may normalize or enrich the data, so record both the original reporting date and the provider retrieval time.
Python short interest data API example
Replace the placeholder URL and authentication method with the provider’s documented values. The example deliberately validates HTTP status and required fields before analysis.
import os
import requests
response = requests.get(
"https://api.example.com/v1/short-interest",
params={"ticker": "AAPL", "limit": 24},
headers={"Authorization": f"Bearer {os.environ['DATA_API_KEY']}"},
timeout=20,
)
response.raise_for_status()
rows = response.json()["results"]
required = {"settlement_date", "short_interest",
"avg_daily_volume", "days_to_cover"}
if rows and not required.issubset(rows[0]):
raise ValueError("Provider response is missing required fields")
for row in rows[:3]:
print(row["settlement_date"], row["days_to_cover"])Validate historical short interest data by ticker
Sort by settlement date, detect duplicates, preserve nulls, and compare consecutive reports. If you calculate percentage change or days to cover yourself, store the exact input fields and calculation version.
A production validator should enforce uniqueness on stable security identifier plus settlement date and source version, not ticker alone. Check that short shares are non-negative integers, dates follow the expected reporting calendar, days to cover matches the documented volume window within tolerance, and split-era discontinuities are explained. Keep raw provider payloads so later corrections can be audited.
Use QVeris to find and call short interest data tools
QVeris can help an agent discover and inspect capabilities for official short-interest history, derived ratios, or short-volume data. Before a call, the agent should state which dataset it needs, the security identifier, settlement-date range, publication-time cutoff, adjustment policy, and required denominators. It must not substitute daily short volume for open short positions or describe a twice-monthly official snapshot as real time. The provider remains the source of the data and its terms.
- Open the Massive Stocks Short Interest tool details to review this precise data capability.
- Inspect parameters and response fields before allowing an agent to call a provider.
- Use the REST API reference and Python SDK guide for integration patterns.
FAQ
Some providers offer a free plan or evaluation access, and FINRA publishes public reporting context and data resources. Verify that the endpoint contains position snapshots rather than only daily short volume, then check history, quota, licensing, and stable identifiers.
Start with provider API documentation and compare it with the relevant exchange or FINRA reporting context. Choose an API only after validating the source and schema.
FINRA member firms report positions for designated settlement dates twice each month, followed by due and publication dates. A provider’s ingestion time, later corrections, and estimated “live” signals are separate timestamps and should be labeled.
At minimum: ticker, settlement date, short interest shares, average daily volume, and days to cover, plus source and retrieval metadata when available.
No. Short volume is trading activity during a period; short interest is an open position measured on a settlement date.
Call a documented ticker endpoint, check the HTTP response, parse JSON, validate required fields, and sort the records by settlement date.
It is short shares divided by a defined public-float share count. The ratio is only reproducible when the float source, effective date, share class, corporate-action adjustment, and short-interest settlement date are known.
Yes, but use publication time—not settlement date—as the earliest availability point, retain historical revisions, and avoid current float or adjusted values that were unavailable at the simulated date.
