Short interest
Short positions as exchanges report them twice a month, one row per report OHLC observed. The connected source carries the latest report with each company profile refresh (about monthly, sooner after a filing) and does not date it, so observed_on is the day OHLC first saw the report, settlement_date and published_at are null, and a report published between two refreshes can be missed. Not published for preferred shares, whose source figures are the issuer's common stock's. History begins in September 2026. short_float_ratio is shares short over the free float, as a ratio (0.0088 means 0.88%). Default order: observed_on ascending, id ascending. Omitting entity selectors returns the entitled universe; explicit unauthorized selectors return 403. Data is delivered from validated canonical batches; a connected dataset with nothing published for the key's markets yet returns 503. Access requires the operation capability on the API key.
/v1/short-interest- Required capability
- short-interest.read
- Data timing
- As published by the source
- Credits
- 5 credits per symbol; 500 credits without symbols (whole market).
Parameters
instrument_idsstringoptional · query- Filter by stable instrument IDs. IDs and symbols may not be combined.
symbolsstringoptional · query- Convenience lookup for exchange-listed instruments as MIC:TICKER or a bare ticker, which resolves to the exchange listing that ticker; resolves at symbol_at. The MIC and the ticker are case-insensitive, and two spellings of one listing (AAPL and XNAS:AAPL) count as a repeated value. A bare ticker that names no listing as written is also read in the common vendor spellings: with an exchange suffix (RY.TO, SHEL.L, VOD.LSE, BHP.AX), ^GSPC for INDEX:GSPC, and EURUSD=X or EURUSD for FOREX:EUR-USD. A ticker may contain a space (BAC PRL) but not start or end with one. A request in which no symbol resolves returns 404 symbol-not-resolved; otherwise each symbol that does not resolve, or resolves to a listing with no rows for the request (no-data), is an entry of meta.errors. IDs and symbols may not be combined.
symbol_atstringoptional · query- Resolve symbols as they were assigned at the end of this UTC date (YYYY-MM-DD); defaults to as_of. Only listings the security master holds resolve: it was built in September 2026 and records delistings from then on, so most issuers delisted earlier, such as TWTR or SIVB, resolve at no date. Only valid with symbols.
fromstringoptional · query- Inclusive lower bound on observed_on.
tostringoptional · query- Inclusive upper bound on observed_on; must be on or after from, so from equal to to selects one day.
as_ofstringoptional · query- Knowledge cutoff as a UTC date (YYYY-MM-DD): the response reflects what was known by the end of that day. Defaults to now; cannot be in the future. A date from before the dataset's knowledge history returns 422 point-in-time-unavailable naming the earliest one, which GET /v1/datasets lists as earliest_as_of.
known_fromstringoptional · query- First UTC date (YYYY-MM-DD, inclusive) on which a revision became known.
known_tostringoptional · query- Last UTC date (YYYY-MM-DD, inclusive) on which a revision became known; on or after known_from.
orderstringoptional · query- Direction on observed_on; ties use ID ascending.
Default:ascdescasc limitintegeroptional · query- Maximum records per page.Default:
100 cursorstringoptional · query- Opaque cursor, expires after one hour; binds filters, order, resolved as_of, account/key and entitlement. Repeat the original query unchanged.
formatstringoptional · query- Response format. csv returns the data rows with a header row, for spreadsheet functions such as IMPORTDATA; nested fields become dotted columns and lists one JSON array cell, the next page cursor is returned in X-Next-Cursor and meta.errors in X-Meta-Errors. A result without rows is the header row alone, listing the documented fields of a row. Default json, or csv when format is omitted and the Accept header ranks text/csv above JSON; a format the Accept header does not admit returns 406 not-acceptable.
jsoncsv
Response fields
Returns data as an array of records. All example values are illustrative.
idstring- Record identifier, stable across revisions.
instrument_idstring- Opaque stable public identifier; never an internal database key.
settlement_datestring · null- Settlement date the positions were reported for. The connected source does not date its figures: always null.
observed_onstring- Date OHLC first observed this report.
published_atstring · null- Instant the exchange published the report. Not available from the connected source: always null.
shares_shortstring- Shares sold short.
previous_shares_shortstring · null- Shares short in the report before this one, as the source states it.
short_float_ratiostring · null- Dimensionless ratio; 0.05 means 5%.
days_to_coverstring · null- Shares short divided by average daily volume; days.
Response metadata
Responses include meta.timezone. Dataset responses include next_cursor; health and exports have their own metadata. Request tracing uses the X-Request-ID header.
When something goes wrong
An empty data: [] is a successful query with no matching records. Invalid symbols, permissions and malformed parameters produce an RFC 9457 problem with an actionable detail.
Plans
Requires short-interest.read. Access, recency and history depth come from the plan definitions the API enforces.
| Plan | Access | Recency | History |
|---|---|---|---|
| Free | Not included | — | — |
| Developer | Not included | — | — |
| Pro | Included | As published | 15 years |
| Commercial | Included | As published | Full history |
| Scale | Included | As published | Full history |
History is how far back a plan may request. How far records actually go for a symbol is history_from in dataset coverage. Nothing is real-time. Compare plans