Table of Contents
Description
This HTTP web service returns the current full release of the STEPSTools Knowledge Base of Extemporaneous Compounds in the format you specify (either xml or pipe-delimited text). If you prefer, there is also an option to retrieve the data using FTP (click here for more information).
Input Parameters
| Tag name |
Type |
Description |
Required |
| authToken |
string |
Token for authenticating to the service. Read more here |
yes |
| vocab |
string |
An abbreviation identifying the medication vocabulary that your system uses (Example: "NDDF"). Currently, STEPSTools only supports abbreviations for First DataBank ("NDDF") and Medispan ("MDDB"). We hope, in the future, to add support for all vocabularies covered by RxNorm. To see a list of these, click here. If the vocabulary you specify is supported, codes for your specified vocabulary will be included in the returned knowledge base. |
yes |
| format |
string |
The format, either xml or pipe-delimited text, that you wish STEPSTools to use when returning the knowledge base. |
yes |
| dropZeroes |
boolean |
Specify a value of true or false to indicate whether you want STEPSTools to drop leading zeroes from codes provided with the knowledge base. |
yes |
Output Values
If the call is not successful, STEPSTools will return an error message. For explanation of STEPSTools error messaging, please see our Error Messages documentation. If the call to the service is successful, STEPSTools will return a series of compounding knowledge base records. Each record contains the following values.
| Tag name |
Type |
Description |
| Compound Id |
integer |
This is a unique and immutable id that STEPSTools assigns to a compound in the STEPSTools compounding knowledge base. |
| Compound Name |
string |
The is the name of the extemporaneous compound. |
| Final Concentration |
string |
In cases where the final concentration (Example: "25 mg/ml") of an extemporaneous compound is known, this will contain that. |
| Route |
string |
The route (Example: "oral") in which the extemporaneous compound is intended to be taken. |
| Active Ingredient: Name |
string |
There will be one or more instances of this in each record. It is the name of an active ingredient contained in the extemporaneous compound. |
| Active Ingredient: Coding Scheme |
string |
There will be one or more instances of this in each record. It's value will either be "IN" for ingredient or "CFI" for compound formulation ingredient. STEPSTools uses this coding scheme to differentiate between ingredients at different levels. If an ingredient is of type "IN", it is a precise ingredient of the immediately preceding type "CFI" ingredient of the compound. |
| Active Ingredient: RxCui |
string |
The ingredient-level cui from RxNorm for the active ingredient. |
| Active Ingredient: Vocab Id |
string |
The ingredient-level identifier from the specified vocabulary for the active ingredient. RxNorm doesn't support all vocabularies at the ingredient level, and STEPSTools relies on RxNorm for these identifiers. If an identifier is not found in RxNorm, the value for this will be "not found". |
| Inactive Ingredient: Name, Coding Scheme, RxCui, Vocab Id |
string |
There will be zero or more instances of this in each record. The concepts are the same as the active ingredients. Currently, STEPSTools doesn't have data on inactive ingredients so these will contain null values. |
| Discontinued |
boolean |
A flag indicating if the compound has been discontinued from the STEPSTools knowledge base. |
Example HTTP GET Message
Request
GET http://dev.pedstep.org/Compounding/GetCompoundingDataBase.aspx?_
authToken=0c849415-5f3d-4005-af0e-fa631b893804&_
vocab=NDDF&_
dropZeroes=true&_
format=xml HTTP/1.1
Host: www.pedstep.org
Additional notes:
- Underscores in the above example are not actual characters which should be used in a real web service request. These are included only to indicate continuation of a single line.
Practice Tool
Enter some test parameters in the fields below to test the web service. A test authorization key has been entered for you as a read-only value. When you click submit, the HTTP GET call that was sent will be displayed below the form as well as the XML return message that came back from the service.

Updating...
Using File Transfer Protocol (FTP)
If you prefer, you can retrieve the database using FTP. The knowledge base is available in flat text and xml formats. Currently, FDB is the only vocabulary that is supported via FTP. We will add others as they are needed by e-prescribing and EMR vendors attempt to implement the knowledge base in their systems. To get access to the knowledge base via FTP, you will need an account on the site (if you don't already have one) which you can apply for here. When you apply, be sure to select the checkbox indicating that you are a developer requesting API access.