DA & DDI checks: supported systems

For drugs:

For allergies:

  • http://snomed.info/sct - SNOMED
  • urn:app:aidbox:e-prescriptions:fdb:AllergenGroupID - FDB allergen group id
  • urn:app:aidbox:e-prescriptions:fdb:DrugNameID - FDB drug name id
  • urn:app:aidbox:e-prescriptions:fdb:IngredientID - FDB ingredient id

Example of request body for /api/medications/interactions:

{
  "medications": [
    {
      "system": "http://www.nlm.nih.gov/research/umls/rxnorm",
      "code": "167"
    }
  ],
  "allergies": [
    {
      "system": "urn:app:aidbox:e-prescriptions:fdb:IngredientID",
      "code": "2432"
    }
  ]
}

Rx and OTC: how to distinguish

There’s an endpoint for dispensable drugs search - /api/medications/{drug-name-id}/dispensable. It responds with a bundle of MedicationKnowledges. To figure out, whether medication is OTC or Rx, look at regulatory.schedule.schedule. While text contains something human-readable, like Prescription Required, No Prescription Required, Non-drug, Non-device or other, coding.code is for machines.

But what those numbers mean? Since this endpoint is using FDB API under the cover, it’s using the same codes. From FDB docs:

CodeDescriptionIndicates that…
1Prescription RequiredThe product is a prescription drug or medical device as defined in the Food Drug and Cosmetic Act (FDCA), including bulk drug ingredients and dietary supplements approved as drugs.
2No Prescription RequiredThe product is a prescription drug or medical device as defined in the Food Drug and Cosmetic Act (FDCA), including bulk drug ingredients and dietary supplements approved as drugs.
3Available in Multiple ClassesThe associated Packaged Drugs (NDC records) contain varied values.
4Non-drug, Non-deviceThe product is neither a drugs nor device as defined in the FDCA, such as dietary supplements (including prenatal and other vitamins), medical foods, herbal preparations, bulk excipients, compounding vehicles, flavorings or colorants, supplies and nutritional products.
9No ValueThere are no Packaged Drugs (NDC records) associated with the MEDID.

From this we can conclude that 1 = Rx, 0 or 4 = OTC, 3 or 9 = Unclear.

Example of bundle entry from response body:

{
  "resourceType": "MedicationKnowledge",
  "code": ...,
  "doseForm": ...,
  "intendedRoute": [
    ...
  ],
  "drugCharacteristic": [
    ...
  ],
  "regulatory": [
    {
      "regulatoryAuthority": {
        "display": "FDCA"
      },
      "schedule": [
        {
          "schedule": {
            "text": "Prescription Required",
            "coding": [
              {
                "code": "1",
                "system": "urn:app:aidbox:e-prescriptions:fdb:FederalLegendCode"
              }
            ]
          }
        }
      ]
    }
  ]
}

Last updated 2025-05-06T09:17:20Z