Drug Retail Data Provider: 16 Cataloged Datasets · Head-to-head
openFDA Drugs@FDA API vs openFDA FAERS Adverse Event API
Which drug retail data provider: 16 cataloged datasets data fits your job: openFDA Drugs@FDA API, or openFDA FAERS Adverse Event API. API, files, or your warehouse. Daily, weekly, or hourly.
openFDA Drugs@FDA API
openFDA FAERS Adverse Event API
Coverage, side by side
| openFDA Drugs@FDA API | openFDA FAERS Adverse Event API | |
|---|---|---|
| Geographic | United States regulatory perimeter | Global submissions to FDA - US and foreign reports, reporter country recorded per case |
| Temporal | Approvals since 1939; linked letters and reviews mostly since 1998 | Reports from 2004 Q1 to present, with late-arriving cases joining after a window closes |
What each contains
They tie on 2 attributes. Pick by fit, not by loyalty.
| openFDA Drugs@FDA API | openFDA FAERS Adverse Event API | |
|---|---|---|
| Publisher | U.S. FDA openFDA | U.S. FDA openFDA |
| Subject lens | Official approval record for US human drug products: sponsors, applications, submissions, marketing status, therapeutic equivalence | Post-market adverse event and medication error reports submitted through the FDA Adverse Event Reporting System |
| Observation unit | One record per application, with nested product rows and submission rows | One record per safety report, with nested drug and reaction arrays |
| Geographic scope | United States regulatory perimeter | Global submissions to FDA - US and foreign reports, reporter country recorded per case |
| Temporal reach | Approvals since 1939; linked letters and reviews mostly since 1998 | Reports from 2004 Q1 to present, with late-arriving cases joining after a window closes |
| Documented fields | 15 verified columns | 17 verified columns |
| Best for | Approval timelines, generic-entry timing, substitutability screens, compliant product masters | Safety-signal detection, label-versus-reaction checks, pharmacovigilance and pharmacoepidemiology |
Or take both in one feed
Yes - as an approval front-end bolted to an outcome back-end, which is the pairing life-cycle analysis actually wants.
Build the denominator from Drugs@FDA: marketed products with their brand names, active ingredients and routes, plus the exact date each application and supplement reached approved status. Then attach FAERS cases by normalizing product names against patient.drug.medicinalproduct, filtering to suspect drugs (drugcharacterization = 1) before counting MedDRA terms. The result is exposure-windowed event history: what accumulated around a molecule, year by year, since it cleared review.
Three seams to respect. There is no shared key - reporter spellings need normalization before anything joins. Deduplicate on safetyreportid together with drug-and-reaction combinations, because reports arrive as new append-only cases rather than edits. And keep the grains apart: never sum approvals into case counts or case counts into approvals, or both ledgers stop meaning anything.
Datadory normalizes each record to its documented dictionary before anything ships, aligned on the keys that survive the join - delivered daily, weekly, or hourly - your call. Start from the drug retail data hub or rank the whole pool on best drug-retail datasets. Or take both in one feed.
API, files, or your warehouse. Daily, weekly, or hourly.
Fair questions
Do the two field dictionaries overlap?
On a thin spine of four concepts: a scoping identifier (`application_number` versus checksummed `safetyreportid`), a drug name (regulated `brand_name` versus verbatim `medicinalproduct`), route of administration, and compact YYYYMMDD dates. Fifteen verified columns on the approval side against seventeen on the safety side; everything else is exclusive to one ledger.
Which dataset reaches further back?
The approval ledger, by nearly nine decades. Drugs@FDA covers approvals since 1939, with letters, reviews and patient information mostly attached since 1998. FAERS begins at 2004 Q1, giving roughly two decades of observed outcomes - deep enough for longitudinal safety work, young compared with the regulatory archive.
Can approval dates be connected to adverse event counts?
Yes, and life-cycle analysis almost demands it. Take marketed products and their approval milestones from `submissions.submission_status_date`, normalize drug names, then match FAERS cases on `patient.drug.medicinalproduct`, filtering to suspect drugs before counting reactions. Expect normalization work rather than a shared key, and deduplicate on the report identifier together with drug-and-reaction combinations.
Can I get both openFDA records from Datadory?
Yes - sample both, pick by fit, or take both in one feed. Each arrives normalized to its documented fifteen- or seventeen-column dictionary with sample rows attached for validation, delivered daily, weekly, or hourly - your call - next to the other seven primary records in the drug-retail slice.