Reference · Ownership and leadership
get_short_interest
FINRA short interest for a stock by settlement date (twice a month), newest first: shares short, change vs the prior date, average daily volume and days to cover as FINRA reports them.
GET https://api.fundalyze.ai/api/public/v1/get_short_interestMCPget_short_interestParameters
| Parameter | Type | Default | Description |
|---|---|---|---|
tickerrequired | stringup to 12 characters | — | US ticker symbol, e.g. AAPL or BRK-B. Use search_companies when unsure. |
periods | integer1–48 | 12 | Settlement dates to return, newest first, 1-48 (two a month). |
Example
A real call and its answer. Replace fdz_live_YOUR_KEY with your key, or set FUNDALYZE_API_KEY for the Python and JavaScript versions.
curl -H "Authorization: Bearer fdz_live_YOUR_KEY" "https://api.fundalyze.ai/api/public/v1/get_short_interest?ticker=AAPL&periods=6"import os
import requests
response = requests.get(
"https://api.fundalyze.ai/api/public/v1/get_short_interest",
params={
"ticker": "AAPL",
"periods": 6,
},
headers={"Authorization": f"Bearer {os.environ['FUNDALYZE_API_KEY']}"},
timeout=60,
)
response.raise_for_status()
answer = response.json()
print(answer["text"])
print("Calls left today:", response.headers.get("X-Quota-Remaining"))const params = new URLSearchParams()
params.append("ticker", "AAPL")
params.append("periods", "6")
const response = await fetch(`https://api.fundalyze.ai/api/public/v1/get_short_interest?${params}`, {
headers: { Authorization: `Bearer ${process.env.FUNDALYZE_API_KEY}` },
})
const answer = await response.json()
if (!response.ok) throw new Error(`${response.status}: ${answer.detail}`)
console.log(answer.text)
console.log('Calls left today:', response.headers.get('X-Quota-Remaining'))The same call as an MCP tools/call: what an assistant sends.
{
"name": "get_short_interest",
"arguments": {
"ticker": "AAPL",
"periods": 6
}
}Response
Generated from live data on Oct 7, 2026; figures change as filings arrive. Rows trimmed to the first 5 for the docs: short_interest had 6.
What an assistant reads (and what MCP returns).
AAPL · short interest (FINRA, twice a month) · newest first · shares; change vs the prior settlement
settlement_date,short_shares,change_shares,change_pct,avg_daily_volume,days_to_cover
2026-09-15,128753092,-10996005,-7.87,45135477,2.85
2026-08-31,139749097,23421344,20.13,39537335,3.53
2026-08-14,116327753,-25278410,-17.85,46065396,2.53
2026-07-31,141606163,-4941621,-3.37,58400983,2.42
2026-07-15,146547784,6021464,4.28,47952794,3.06
... 1 more rows in the full answer (trimmed for the docs)
Source: Short interest data are owned by and sourced from FINRA (Financial Industry Regulatory Authority, Inc.), including figures derived from it; FINRA does not endorse Fundalyze.
More: https://fundalyze.ai/stocks/nasdaq/aapl?tab=short-interestThe same content as JSON (REST).
{
"ticker": "AAPL",
"short_interest": [
{
"settlement_date": "2026-09-15",
"short_shares": 128753092,
"prior_short_shares": 139749097,
"change_shares": -10996005,
"change_pct": -7.87,
"avg_daily_volume": 45135477,
"days_to_cover": 2.85,
"revised": false,
"split": false
},
{
"settlement_date": "2026-08-31",
"short_shares": 139749097,
"prior_short_shares": 116327753,
"change_shares": 23421344,
"change_pct": 20.13,
"avg_daily_volume": 39537335,
"days_to_cover": 3.53,
"revised": false,
"split": false
},
{
"settlement_date": "2026-08-14",
"short_shares": 116327753,
"prior_short_shares": 141606163,
"change_shares": -25278410,
"change_pct": -17.85,
"avg_daily_volume": 46065396,
"days_to_cover": 2.53,
"revised": false,
"split": false
},
{
"settlement_date": "2026-07-31",
"short_shares": 141606163,
"prior_short_shares": 146547784,
"change_shares": -4941621,
"change_pct": -3.37,
"avg_daily_volume": 58400983,
"days_to_cover": 2.42,
"revised": false,
"split": false
},
{
"settlement_date": "2026-07-15",
"short_shares": 146547784,
"prior_short_shares": 140526320,
"change_shares": 6021464,
"change_pct": 4.28,
"avg_daily_volume": 47952794,
"days_to_cover": 3.06,
"revised": false,
"split": false
}
],
"attribution": {
"source": "FINRA (Financial Industry Regulatory Authority, Inc.)",
"notice": "Short interest data are owned by and sourced from FINRA (Financial Industry Regulatory Authority, Inc.), including figures derived from it; FINRA does not endorse Fundalyze.",
"url": "https://www.finra.org/finra-data/browse-catalog/equity-short-interest"
}
}Fields of data
What each field of data means. rows[].field is a field of each row in the rows list.
| Field | Meaning |
|---|---|
short_interest | Settlement dates, newest first (list; see short_interest[]). |
ticker | Ticker as FINRA lists it. |
short_interest[].settlement_date | FINRA settlement date (ISO) |
short_interest[].short_shares | Shares sold short |
short_interest[].prior_short_shares | Shares short at the prior date |
short_interest[].change_shares | Change vs the prior date, shares |
short_interest[].change_pct | Change vs the prior date, percent |
short_interest[].avg_daily_volume | Average daily share volume (FINRA) |
short_interest[].days_to_cover | short_shares / avg_daily_volume; 999.99 when volume is 0 |
short_interest[].revised | FINRA revised this figure |
short_interest[].split | A stock split affected this period |
attribution | {source, notice, url}: show the notice with the data |
The link
Every answer ends with More: <link>, and REST returns the same URL as link: the fundalyze.ai page where the figures can be checked (here, fundalyze.ai/stocks/nasdaq/aapl?tab=short-interest). Cite it when you show the data to others, as the attribution rules ask.
Errors
A bad parameter is a 400 naming it, an unknown ticker a 404, a busy key or a used-up day a 429. Every status and message: Errors.
This page as Markdown, for language models and scripts: /developers/md/reference/get_short_interest