---
title: "Returns SEC delisting and deregistration filings: the Form 25 family (notification of removal from listing on a national exchange under Rule 12d2-2) and the Form 15 family (certification terminating or suspending a security class's registration — the 'going dark' filing that ends SEC reporting; 15F variants are the foreign-private-issuer equivalents)"
method: GET
path: "/v1/delistings"
---

# Returns SEC delisting and deregistration filings: the Form 25 family (notification of removal from listing on a national exchange under Rule 12d2-2) and the Form 15 family (certification terminating or suspending a security class's registration — the 'going dark' filing that ends SEC reporting; 15F variants are the foreign-private-issuer equivalents)

`GET /v1/delistings`

## Request

- Base URL: `https://api.keyvex.com`
- URL: `https://api.keyvex.com/v1/delistings`
- Auth: API key in header `x-api-key`

Returns SEC delisting and deregistration filings: the Form 25 family (notification of removal from listing on a national exchange under Rule 12d2-2) and the Form 15 family (certification terminating or suspending a security class's registration — the 'going dark' filing that ends SEC reporting; 15F variants are the foreign-private-issuer equivalents). Use this when the user asks: was/is a company being delisted, which companies went dark recently, what securities did an exchange remove, or to pair with tender offers / 8-Ks / insider sales around an exit event.  Reading a record: action='delisting' (25 family) vs 'deregistration' (15 family) is a faithful form→rule mapping, not an opinion. 25-NSE is filed BY THE EXCHANGE against the issuer (exchange_name/exchange_cik are set) — typically the involuntary path; a bare Form 25 is filed by the issuer itself (voluntary withdrawal, e.g. after a merger). rule_provision carries the cited Rule 12d2-2 provision verbatim — the provision distinguishes the grounds for removal; agents can read the cited paragraph. A merger close typically produces a Form 25 AND a Form 15 within weeks.  EDGAR coverage: Form 15 family 1994→present; issuer-filed Form 25 from mid-2001; exchange-filed 25-NSE from 2005 Q4 (the Rule 12d2-2 amendments moved exchange filings onto EDGAR — earlier removals were paper-filed and are not in EDGAR). security_class / rule_provision / exchange fields are populated from the structured 25-NSE XML; 15-family records are metadata-level — follow filing_index_url for the document.  Pure-publisher posture: EDGAR records as published.

## Query parameters

- `accession_number` string
- `form` '25' | '25/A' | '25-NSE' | '25-NSE/A' | '15-12B' | '15-12B/A' | '15-12G' | '15-12G/A' | '15-15D' | '15-15D/A' | '15F-12B' | '15F-12B/A' | '15F-12G' | '15F-12G/A' | '15F-15D' | '15F-15D/A'
- `action` 'delisting' | 'deregistration'
- `ticker` string
- `cik` string
- `company_name` string
- `since` string
- `until` string
- `sort_order` 'asc' | 'desc'
- `limit` integer

## Response `200`

JSON envelope: { results: [...], count, has_more }.

## Other responses

- `400`: Invalid parameter.
- `401`: Missing or invalid API key.
- `402`: This tool requires a higher plan (upgrade_required). Retrying will not help.
- `429`: Tier rate/quota limit reached (rate_limited). Retry-After points at the reset.

---

[API](https://skmtc.dev/keyvex/apis/keyvex-api.md) · [All operations](https://skmtc.dev/keyvex/apis/keyvex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/keyvex/apis/keyvex-api/revisions/01c0210c19cd?raw)
