SEC trading suspensions: every Section 12(k) order halting trading in a stock,
SEC trading suspensions: every Section 12(k) order halting trading in a stock, 1995 to today -- the terminal-risk tape for dying OTC and small-cap names. One row per (order, issuer): who was halted, when trading stopped, when it could legally resume (first NYSE session after the order terminates), the cited reason normalized to a 4-value taxonomy, listing venue, and the order PDF URL.
Bulk delinquency orders (2013-2021) name up to ~55 issuers under one release_number -- use issuer_count/issuer_index to collapse rows back to order level. Ticker is NULL where the order states none (most pre-2022 rows). resumption_at is when trading MAY resume; many suspended names never quote again. The SEC's suspension output collapsed after 2021: expect only a handful of orders per year since.
Requires an Alphanume Pro API key. A 403 PRO_SUBSCRIPTION_REQUIRED or DATE_RANGE_RESTRICTED error means the key's plan does not cover the request -- it does not mean the data is missing. Note the newest event may be months old: short date windows can legitimately be empty on this dataset.
Request
- Base URL: https://api.alphanume.com
- URL: https://api.alphanume.com/v1/market-structure/sec-suspensions
- Auth: one of:
- API key in header X-API-Key
- HTTP bearer
Query parameters
Ticker symbol filter, e.g. 'AAPL'. Case-insensitive.
SEC CIK number (digits only) to filter by issuer. The only survivorship-proof id for dead shells; NULL on most bulk-order rows.
Exchange Act release number, e.g. '34-92362' (a bare '92362' is normalized). One bulk order returns one row per named issuer.
Why the SEC suspended trading: delinquent_filings, market_manipulation, accuracy_adequacy_of_information, or other.
Case-insensitive substring match on the issuer name -- the only handle on rows with no ticker.
true/false: whether the date trading could legally resume is in the past. Resumption is permission, not evidence of quoting (Rule 15c2-11).
true = single-issuer orders only (the modern manipulation cases); false = bulk multi-issuer orders only.
YYYY-MM-DD: rows whose suspension window covers this date -- 'which stocks were untradeable on day X'. Not expressible via the release-date window.
Exact date, YYYY-MM-DD. Cannot be combined with the date range parameters.
Start of date range, inclusive (YYYY-MM-DD).
End of date range, inclusive (YYYY-MM-DD).
Start of date range, exclusive (YYYY-MM-DD).
End of date range, exclusive (YYYY-MM-DD).
YYYY-MM-DD, on last_updated -- rows touched by the resumption sweep since this date.
Pagination: 'date' from next_cursor (send all three cursor params together).
Pagination: 'release_number' from next_cursor.
Pagination: 'issuer_index' from next_cursor.
Response
Matching rows.
Changes
No recorded changes to this operation across all 1 revision of this API.