APIs

RxNorm API

filterByProperty

Information returned
Concept RXCUI if the predicate is true
Service domain
https://rxnav.nlm.nih.gov
HTTP request
GET  /REST/rxcui/rxcui/filter.xml?propName=propName&propValues=propValues

Description

Determines whether the concept, indicated by rxcui, has a property named by the propName parameter, and optionally checks that the property's value is one of the values in propValues. Returns the RxCUI if the concept meets the criteria. If the concept does not meet the criteria, the output does not include an RxCUI.

Scope

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

Parameters

ParameterLocationUseDescriptionDefault
rxcuiPathRequiredRxNorm identifier
formatPathOptional

Notation for results

One of:
.xml
Get results in XML
.json
Get results in JSON
.xml
propNameQueryRequiredProperty name

(See getPropNames for the menu.)

propValuesQueryOptionalValues the property might have

(Space-separated list.)

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 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:

rxnormdata
Root element in XML, or anonymous object in JSON
rxcui
RXCUI that satisfies the condition

Example: Determine whether RxCUI 7052 is either an ingredient (IN) or a precise ingredient (PIN)

XML: https://rxnav.nlm.nih.gov/REST/rxcui/7052/filter?propName=TTY&propValues=IN+PIN

JSON: https://rxnav.nlm.nih.gov/REST/rxcui/7052/filter.json?propName=TTY&propValues=IN+PIN

The presence of the rxcui in this result confirms that the TTY property for morphine (RxCUI=7052) is either an ingredient or a precise ingredient.

An XML result is shown below.

<rxnormdata>
    <rxcui>7052</rxcui>
</rxnormdata>