Prescribable RxNorm API


Information returned
Concepts having a specified term type
Service domain
HTTP request
GET  /REST/Prescribe/allconcepts.xml?tty=yourTTYs


Returns concepts of the term types specified by the tty parameter.


Active: concepts in the current RxNorm data set that have an atom with SAB=RXNORM and SUPPRESS=N



Notation for results

One of:
Get results in XML
Get results in JSON
ttyQueryRequiredTerm type(s), or ALL

(Space-separated list. See getTermTypes for the menu.)

All query parameters are case-insensitive.

Note that HTTP requires that query parameters be "URL encoded". For instance, a "space-separated list" will, in practice, usually appear to use either a plus sign (+) or %20 as the separator. For full information on URL encoding, please refer to IETF RFC 3986, "Uniform Resource Identifier".

Output structure

Results are available as either XML or JSON.

  • The XML result has the root element rxnormdata. It is described in the XML Schema for the Prescribable RxNorm API; the relevant element structure is summarized below. Elements that would be empty might be left out.

  • The JSON result is an object {...}, analogous to the content of the XML rxnormdata. Fields that might occur multiple times in the XML are expressed as an array. Fields that would be empty might be null or left out. Numbers are expressed as strings.

Both XML and JSON results follow the same outline:

Root element in XML, or anonymous object in JSON
minConcept (array)
RxNorm concept
RxNorm identifier
Concept name from SAB=RXNORM
Term type

Example: Brand names (tty=BN)

XML: https://rxnav.nlm.nih.gov/REST/Prescribe/allconcepts?tty=BN

JSON: https://rxnav.nlm.nih.gov/REST/Prescribe/allconcepts.json?tty=BN

An XML result is shown below.

            <name>A+D Diaper Rash</name>
            <name>A+D Original</name>