---
title: "Returns FDA approval / clearance events: drug approval actions from Drugs@FDA, medical-device 510(k) clearances, and device PMA (premarket approval) decisions"
method: GET
path: "/v1/fda-approvals"
---

# Returns FDA approval / clearance events: drug approval actions from Drugs@FDA, medical-device 510(k) clearances, and device PMA (premarket approval) decisions

`GET /v1/fda-approvals`

## Request

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

Returns FDA approval / clearance events: drug approval actions from Drugs@FDA, medical-device 510(k) clearances, and device PMA (premarket approval) decisions. Full history (drugs to 1939, 510(k) to 1976, PMA to the 1960s). This is the BULLISH twin of get_product_recalls — the catalyst dataset for biotech and medtech tickers. Use this when the user asks about: new drug approvals for a company or ingredient, priority-review approvals, tentative generic (ANDA) approvals, device clearances by company or product code, PMA supplements, or to pair an approval date with insider trades / 8-K filings / fundamentals.  Sources (filter via the `source` enum):   drugsfda — Drugs@FDA submission actions. One record per submission              decision (ORIG = original approval, SUPPL = supplemental).              decision_code: AP (approved) | TA (tentative approval —              generic approved but blocked by patent/exclusivity).              review_priority: PRIORITY | STANDARD — PRIORITY reviews              are the higher-signal events. application_number prefix              tells the product class: NDA (new drug), ANDA (generic),              BLA (biologic).   510k     — Device premarket notifications. decision_code SESE              ('substantially equivalent' — cleared) dominates ~98%.              approval_type: Traditional | Special | Abbreviated.   pma      — Device premarket approvals (Class III, highest-risk              devices — implants, life-sustaining). Originals AND              supplements (supplement_number, supplement_reason).              decision_code: APPR (approved) | OK30 (30-day supplement              accepted) dominate. openFDA ships no description text for              PMA codes; decision_description mirrors the code.  review_priority='EXPEDITED' marks devices under expedited review; 'PRIORITY' marks priority-review drugs. Empty = standard / not flagged.  Company matching: `applicant` is a substring filter on the sponsor / applicant name AS FILED (e.g., 'Pfizer', 'Boston Scientific'). FDA records carry no ticker or CIK — subsidiaries file under their own names, so try the operating-company name, not the holding company.  source_url points at the accessdata.fda.gov detail page (approval letters, labels, review documents). Pure-publisher posture: no derived 'approval odds' or price-impact signals.

## Query parameters

- `id` string
- `source` 'drugsfda' | '510k' | 'pma'
- `category` 'drug' | 'device'
- `application_number` string
- `applicant` string
- `product_name` string
- `decision_code` string
- `review_priority` 'PRIORITY' | 'STANDARD' | 'EXPEDITED'
- `product_code` 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)
