Medicine and Drug Data APIs from openFDA, DailyMed, RxNorm, GoodRx, DrugBank, First Databank, and more

How does drug data sharing work?

The flow of consistent labeling content: from manufacturers to computer systems, Source: Arbortext
  1. Manufacturers submit SPL files containing drug registration and listing information.
  2. The FDA reviews and approves their labeling content and then derives National Drug Codes (NDC) and stores them in the NDC Directory.
  3. Then, the FDA automatically provides labeling content and updates to the National Library of Medicine (NLM) of the National Institutes of Health. It operates the world’s largest medical library: books, journals, technical reports, manuscripts, microfilms, photographs, and images on medicine and related sciences. NLM stores its vast data in the public DailyMed repository.
  4. DailyMed serves as the official provider of FDA label information for hospital information management systems, electronic prescription systems, and other healthcare software to process the labeling content for analysis, aggregation, data mining, etc.

Understanding drug data standards

Structured Product Labeling: an XML format for electronic medication labeling

A label created in accordance with SPL

National Drug Codes: a drug’s unique 10-digit identifier

The NDC for a 100-count bottle of Prozac 20 mg, Source:
Mylan Pharmaceuticals’ Diazepam tablets with their NDC number printed on the package, Source: Basicmedical Key

RxNorm: normalized terminology for efficient and unambiguous communication of drug names

The RxCUI is used to link one entity in RxNorm to every other entity it’s related to, such as name to ingredient to class, Source: Michelle Smerek

AHFS Patient Medication Information: patient-friendly presentation of drug information

Key drug data APIs, their standards, and data coverage

openFDA Drug APIs: access to the publicly available FDA data

openFDA Adverse event API: access to adverse event and medication error reports

Template of the adverse event report
  • the sender: manufacturer or public,
  • the patient: male or female, age group
  • the date of the report
  • the reaction: life-threatening, hospitalization, disabling, death, congenital anomaly or less serious
  • the drug class
  • the report id or type,
  • the country of occurrence

openFDA Product labeling API: access to the SPL data set

  • the section: prescription drugs or OTC drugs
  • ingredient: active and inactive
  • risks and adverse reactions
  • warnings and cautions: Boxed Warning, pregnancy and breastfeeding, children’s reach, etc.
  • route of administration: oral, topical, intravenous, ophthalmic, dental, intramuscular, respiratory, sublingual, subcutaneous, nasal, etc.
  • drug interactions: caffeine, grapefruit juice, alcohol, etc.
  • storage and handling

openFDA NDC Directory API: access to the database of the National Drug Codes

  • generic name, brand name
  • dosage form
  • expiration date
  • ingredients
  • pharmacological class categories: cell-mediated immunity, increased histamine release, allergens, etc.
  • Drug Enforcement Administration schedule number: CI, CII, CIII, CIV, and CV.

openFDA Recall enforcement reports API: access to drug recall data

  • Initiator: firm or FDA
  • Level of hazard involved: I, II, or III
  • Reason for recall
  • Recall initiation date
  • Report date
  • Product type
  • Address

DailyMed RESTful API: access to the structured product labeling data

  • drug classes associated with one SPL
  • an SPL document, version history, media links, NDCs, and product packaging descriptions for specific Set ID

MedlinePlus: access to the patient-friendly medicine information

MedlinePlus Connect

How an EHR system communicates with MedlinePlus Connect: It sends a request with a medication code, and the service returns link(s) to the most appropriate drug information.

MedlinePlus web service

RxNorm APIs: access to the NLM drug information sources

  • RxNorm RESTful Web API
  • Prescribable RxNorm API
  • RxTerms API
  • RxClass API
  • Drug Interaction API
  • RxCUI History API

RxNorm RESTful Web API: access to the complete RxNorm data set

Source vocabularies represented in RxNorm, except for MDDB removed in 2017
  • Search RxNorm concepts by identifier/name/specified term types
  • Find NDCs/properties/related info/proprietary information/status for a concept,
  • Find properties for NDC, its status
  • Search brands by ingredients
  • Search concept by specified relationship types/term types
  • Return the related drugs
  • Find the closest concepts matching the input string when it doesn’t correspond to any concept as it is
  • Make spelling suggestions

RxTerms API: access to the drug terminology for efficient data entry

  • Concepts
  • Information for a specified concept
  • Display name for a specified concept

RxClass API: access to the RxClass Browser

The drug sources and the classes they associate with
  • RxNorm drug members by class name or identifier
  • Drug classes by RxNorm drug name or identifier

Drug Interaction API: access to drug-drug interactions

  • Finds interactions between a list of drugs
  • Finds the interactions for an RxNorm drug
  • Gets the sources of the interactions

RxCUI History API: access to concept history

  • Gets the history information for an RxNorm concept by RxCUI
  • Gets the concepts by a specified status

European medicines agencies and their databases

European public assessment reports include information on authorized, refused, suspended or withdrawn medicines at an EU level, withdrawal assessment reports

Healthcare tech providers and their drug data APIs

DrugBank Clinical Drug API: access to comprehensive clinical data from the USA, Canada, and European Union

  • Drug products dataset comprises all drugs approved by FDA, EMA, and Health Canada. It includes brand name, labeler, dosage, dose form, route of administration, and marketing period. Drug products come complete with simple and clinical descriptions and medicinal ingredients.
  • Drug ingredients are sourced from over 24,000 references including FDA labels. They sum up common synonyms, indication descriptions, mechanism of action, toxicity, and chemical structure.
  • The product concept dataset is organized hierarchically to simplify navigation and the comparison of similar products.
  • Pill image dataset is sourced from the NIH so it covers only US drugs.
  • The adverse effects are collected from clinical trial data, drug labels and post-market reporting.
  • Autocomplete search for drug products by drug ingredient name
  • Multi-step search for a specific product by selected attributes (e.g. route or dosage)
  • Search by condition
  • Find drug-drug interactions (DDI) with a list of medications
  • Get DDIs and adverse effects for a product or ingredient

GoodRx APIs: access to US prescription drug retail pricing

  • Fair Price API returns the maximum reasonable price for a given drug at a local pharmacy.
  • Low Price API returns the lowest cash price for a given prescription drug
  • Price Comparison API returns the three lowest prices without applying insurance
  • Drug Info API shows all available form and dosage options to ease price calls construction
  • Drug Search API matches the query to the drug name in the database, does spell checking if necessary, and returns the top five suggestions

First Databank Cloud Connector API: access to MedKnowledge database

How request executions with FDB Cloud Connector works
  • Dosing and ordering data,
  • Drug images and imprints,
  • Drug pricing information for most drugs commonly dispensed by a US pharmacy,
  • Multiple allergic reactions, warnings, and precautions,
  • Drug-drug and drug-food interactions, indications, and side effects
  • and many more details.

Wolters Kluwer Health APIs: access to global clinical drug information for healthcare professionals

WKH take pride in their evidence-based process of reviewing and developing their own content obtained from general healthcare sources
GPI for Lipitor Oral Tablet 10 Mg
  • Searching and retrieving adverse drug effects data for a given drug or specific drug identifier (e.g. incidence or severity level, time frame of the incident, medical conditions prone to particular adverse drug effect)
  • Drug dosing information specific to patient parameters and conditions, route of administration, indication, dose type, etc., dosing recommendations
  • Drug filtering by allergens
  • Precautions filtered by severity, drug necessity, conditions like breast-feeding
  • drugs prescribtion by specific medical condition, FDA approval and medical recognition, source and its quality, therapy duration, expected result,
  • Prevention of drug duplications
  • Compatibility and stability information for parenteral drugs
  • Calculation for morphine equivalent dosing to safely prescribe pain medications
  • Return drug identifiers: NDC, proprietary GPI, and Canadian Drug Identification Number
  • Identification of contraindicated routes of administration or those not recommended

APIs role in health IT interoperability



Being a Technology & Solution Consulting company, AltexSoft co-builds technology products to help companies accelerate growth.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store