RxNorm API
The RxNorm API is a web service for accessing the current RxNorm data set. With one exception, no license is needed to use the RxNorm API. This is because the data returned from the API is from the RxNorm vocabulary, a non-proprietary vocabulary developed by the National Library of Medicine.

The API can return the data in XML or JSON formats. The XML structure is described in the rxnormrest.xsd XML schema.

The base URI for the API is https://rxnav.nlm.nih.gov/REST. A complete resource URI is formed by combining the base URI, a REST resource from the table below, ".json" if you want JSON instead of XML, and query parameters (described on the detail page of each resource). For example:

https://rxnav.nlm.nih.gov/REST/rxcui.json?idtype=NDC&id=11523-7020-1

The API only supports the HTTP method GET.

Functions and Resources

The following table shows each function (also known as a REST resource) in the API.
Key:
REST Resource
URL pattern to reach the resource. The link leads to the parameters and other details of the resource
Functional Name
How the resource may be referenced in literature and RxMix
Description
Content of the resource
Scope
RxNorm Concepts covered by the resource. Possible values:
  • Active - indicates the resource applies to only active concepts in the current data set (i.e., concepts that have an RxNorm vocabulary term and no mention of suppressibility).
  • Current - indicates the resource applies to any concept in the current data set.
  • Active/Current - indicates the resource can cover either Active or Current concepts, according to a parameter.
  • Current & Historical - indicates the resource applies to concepts in the current data set, as well as concepts in previous data sets.
Functional Name REST Resource Description Scope
filterByProperty /rxcui/{rxcui}/filter Filter by property Active
findRxcuiById /rxcui?idtype Search by identifier to find RxNorm concepts Active/Current
findRxcuiByString /rxcui?name Search by name to find RxNorm concepts Active/Current
getAllConceptsByTTY /allconcepts Return the RxNorm concepts for the specified term types Active
getAllConceptsByStatus /allstatus Return the concepts for a specified status Current & Historical
getAllHistoricalNDCs /rxcui/{rxcui}/allhistoricalndcs Return all National Drug Codes (NDC) for a concept Current & Historical
getAllNDCsByStatus /allNDCstatus Return the NDCs for a specified NDC status Current & Historical
getAllProperties /rxcui/{rxcui}/allProperties Return all properties for a concept Active
getAllRelatedInfo /rxcui/{rxcui}/allrelated Return all related concept information Active
getApproximateMatch /approximateTerm Approximate match search to find closest strings Active/Current
getDisplayTerms /displaynames Return the auto suggestion names Active
getDrugs /drugs Return the related drugs Active
getIdTypes /idtypes Return the available identifier types Active
getMultiIngredBrand /brands Return the brands containing the specified ingredients Active
getNDCs /rxcui/{rxcui}/ndcs Return all National Drug Codes (NDC) for a concept Active
getNDCProperties /ndcproperties Return National Drug Code (NDC) properties Active
getNDCStatus /ndcstatus Return the status of a National Drug Code (NDC) Current & Historical
getPropCategories /propCategories Return the property categories. Active
getPropNames /propnames Return the property names. Active
getProprietaryInformation /rxcui/{rxcui}/proprietary Return the proprietary information for a concept Current
getRelatedByRelationship /rxcui/{rxcui}/related?rela Return the related concepts of specified relationship types Active
getRelatedByType /rxcui/{rxcui}/related?tty Return the related concepts of specified term types Active
getRelaTypes /relatypes Return the available relationship types Active
getRxConceptProperties /rxcui/{rxcui}/properties Return the concepts properties Active
getRxcuiHistoryStatus /rxcui/{rxcui}/historystatus Return the status, history and other attributes of a concept Current & Historical
getRxNormName /rxcui/{rxcui} Get the RxNorm name for a concept Active
getRxNormVersion /version Return the RxNorm data set version Current
getRxProperty /rxcui/{rxcui}/property Return the value of a concept property Active
getSourceTypes /sourcetypes Return the available vocabulary abbreviated source types Current
getSpellingSuggestions /spellingsuggestions Return spelling suggestions for a name Active
getTermTypes /termtypes Return the available term types Active


Note: Please check the Terms of Service for restrictions on using the APIs.


Deprecated Functions

Functional Name REST Resource Description
getAllNDCs /rxcui/{rxcui}/allndcs DEPRECATED. Use /rxcui/{rxcui}/allhistoricalndcs instead.
getRxcuiStatus /rxcui/{rxcui}/status DEPRECATED in JULY 2020. Use /rxcui/{rxcui}/rxcui/{rxcui}/historystatus instead.