NAV

Drug-Drug Interaction Checker Implementation Guide

How does the Drug-Drug Interactions Checker work?

DrugBank's DDI module and endpoints can be tailored for any application whether the end user is a healthcare professional or the general public. Let's take a look at a scenario where the DDI checker can be used:

A Physician has a patient that has a recent diagnosis of atrial fibrillation and is currently being treated with Coumadin (blood thinner), as well as a past medical history of urinary tract infection (UTI). She once again presents with symptoms of a UTI. In the past, her Physician had prescribed Bactrim to treat her UTI; however, with her current medical condition requiring warfarin use, the Physician checks possible drug-drug interactions in order to prevent complications. The DDI checker the Physician uses in the clinical software is powered by the DrugBank DDI API, which returns interactions between Coumadin and Bactrim. . The Physician confirms that in this instance, Bactrim along with the patient's blood thinner increases the risk for excessive bleeding and can now look for a safer alternative treatment.

Drug-Drug Interactions Plug and Play

We've created a ready-to-use plugin that makes showing drug-drug interactions a breeze! Not only does it integrate well with our Medication Search Plugin, but it's also easy to add it to any healthcare software where users need to check for drug interactions. It's beautifully designed and ready for you to start using in mere hours!

Download the Plugin with a detailed implementation guide.

What are Interactions?

DrugBank's Drug-Drug Interactions (DDI) endpoints check for interactions between ingredients of specified drug products. Leveraging this information is beneficial to users because it helps them to make informed decisions about whether certain drugs should or should not be taken together, and other important factors such as risks associated with using drugs in certain combinations. This helps increase better medication outcomes, reduce medical errors and patient morbidity.

At DrugBank, we group our drug interactions in 3 ways:

Learn more about the 3 types of drug interactions.

Get Started

To get started with the DDI endpoint, you will first need to capture a minimum of two assigned IDs. The IDs can be a combination of the following:

  1. Active ingredient using DrugBank ID (DB ID)
  2. Drug product using DrugBank Product Concept ID (DBPC ID)
  3. Local product IDs such as an NDC code

To learn more on obtaining the various IDs check out these articles:

DrugBank IDs
DrugBank Product Concept IDs
Local product IDs

Note: We recommend using Product Concept IDs since this allows you to check for interactions taking routes into consideration. For example, when 2 drugs interact and are taken orally, but do not interact if one is topical and the other is oral.

Step 1

After grabbing the stored IDs, you can now start the drug-drug interactions check. You would enter the following base URL:

https://api.drugbank.com/v1/ddi?

Step 2

How to use the drug-drug interactions check

Let's go back to the story above and show how the DDI endpoint works using the recommended method with Product Concept IDs. The two products mentioned in the story are Coumadin (DBPC0062768) and Bactrim (DBPC0043651).

After the base URL you would add the following parameter:

https://api.drugbank.com/v1/ddi?product_concept_id=DBPC0062768,DBPC0043651

By using the Product Concept search, the combined characteristics of the drug products, in this case, Coumadin and Bactrim, are searched. Notice on line 5 that the 2 drugs that make up Bactrim (sulfamethoxazole and trimethoprim) are both listed. These are broken down separately in lines 8 and 30. The interactions check will take into account both of these components, combined and separate, against the 2nd drug product, Coumadin. Notice on line 11 that Coumadin is identified as the brand, and the ingredient is warfarin.

As with the previous example, any interactions between some or all of these ingredients will be listed in a summary description as well as an extended description, along with management if any interactions exist.

Note: in this case, we used a Product Concept ID, but you can use other identifiers in a combination or by themselves as long as the API is given specific identifiers. For example, the equivalent of using other IDs would be:

  1. For drug ingredients:
    https://api.drugbank.com/v1/ddi?drugbank_id=DB00682,DB00196
  2. For NDC codes:
    https://api.drugbank.com/v1/ddi?ndc=55154-7716,49708-0145
  3. For a combination:
    https://api.drugbank.com/v1/ddi?product_concept_id=DBPC0024484&drugbank_id=DB00503&ndc=0143-9503

Must Knows

Two parameters from the DDI endpoint are especially noteworthy: severity and evidence.

Severity is grouped into 3 levels: minor, moderate, and major. Filtering at a specific severity level may be helpful depending on your use case. Likewise, the evidence parameter can help you determine if an interaction should be displayed. You may only want to display interactions documented on a drug label (evidence level 1) vs. interactions that have been reported in case study (evidence level 2).

Since many drug-drug interactions exist, these two parameters help filter interactions based on your specific needs without overwhelming you with extraneous data.

Here's a breakdown of the different parameters and the descriptions of the results:

ParameterDefaultDescription
severitynull

Limits results by the severity of the interactions. May be major, moderate, or minor.

  • minor: observe and adjust

These medications may interact in a clinically significant manner. However, the benefit of using these medications usually outweighs any risks. The medications may or may not require a dose adjustment and monitoring.

  • moderate: adjustment should be considered

The benefits of continuing the medication should be evaluated on an individual basis. Actions such as observing, changing the dose, or changing the medications may be considered.

  • major: combination should be avoided

This combination may cause more harm than benefit and alternative medications should be considered.

evidence_levelnull

Limits results by the evidence level of the interactions. May be level_1 or level_2.

level_1: Mentioned in the drug monograph (FDA, Health Canada, EMA, etc) and has been confirmed in clinical studies (cohort, case-control, case study etc.)

level_2: Has been confirmed in at least 1 cohort, case-control, or case study and may or not be mentioned in a drug monograph.

managementnull

This provides management advice to physicians on how to avoid and/or mitigate the interaction. This should not be used for self-medicating.

include_referencesfalse

If true, includes the references for each interaction. See References for details on the format.

Good To Knows

Drug-drug interactions endpoint can check up to a maximum of 40 drugs per call.

You may also have mixed input IDs for the drug interaction checker (eg. DB IDs & product concept IDs combo, DB IDs & local product IDs combo, product concept IDs & local product IDs combo, or a combo of all three).

See how this is done here.

DrugBank covers multiple regions, and each jurisdiction has its own unique product ID field.

Here is a list of the different codes that can be used when applying the local product ID method for an interaction search:

RegionRegion CodeProduct ID FieldLocal Product IDExample
Austriaatat_product_idMA number16965
CanadacadpdDIN2341093
Colombiacoco_product_idInvima IDINVIMA M-012422
European Unioneuema_ma_numberEU MA numberEU/1/04/276/001
European Unioneuema_product_codeProduct numberEMEA/H/C/000471
Indonesiaidnidn_product_idNomor registrasiGKL0122234837A1
Italyitit_product_idAIC038835056
Malaysiamymy_product_idRegistration no.MAL12115054ACZ
Singaporesgsg_product_idLicense no.SIN11734P
Thailandthth_product_idRegistration no.1C 95/60(N)
Turkeytrtr_product_idBarcode8699508150243
United Statesusndc9-digit NDC0169-5174

Depending on your use case, you might not require everything returned from the interaction search. Here are a few common fields that are valuable:

FieldsDescription
ingredient/product_ingredient→ nameThis will display the drug ingredient that causes the drug interaction, by affecting the other drug in question
affected_ingredient/affected_product_ingredient→ nameThis will display the drug ingredient that is affected from the drug interaction
descriptionA brief explanation of what happens due to the drug interaction *this would be a good information to display if the end user is the general public*
extended_descriptionA more thorough and detailed explanation of what happens due to the drug interaction *this additional information would be useful for a practitioner/ physician*