NAV

Product Package Structure & Examples

Structure Overview

These structures describe how drug products are packaged and labelled for distribution. Drug products may be packaged on their own, or in combination with other drug products as a kit. The packaging for a product may have multiple levels (i.e. an inner package within an outer package).

When a manufacturer relabels a product with new NDC package codes, DrugBank retains every package code we have ever seen for that product. Each package includes a status field so you can distinguish currently-marketed codes from historical ones. See Historical Package Codes below for details.

An example of a simple package containing a single drug product and one level of packaging is shown below:

{
    "package_ndc_code": "50580-0111-08",
    "description": "240 mL in 1 BOTTLE, PLASTIC",
    "amount": "240",
    "unit": "mL",
    "form": "BOTTLE, PLASTIC",
    "status": "active",
    "for_product": {
        "ndc_product_code": "50580-0111",
        "name": "Tylenol Extra Strength",
        "active_ingredients": [
            {
                "name": "Acetaminophen",
                "unii": "362O9ITL9D",
                "strength_number": "500",
                "strength_unit": "mg/15mL"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "anhydrous citric acid",
                "unii": "XF417D3PSL",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "D&C Red NO. 33",
                "unii": "9DBA0SBB0L",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "FD&C Red NO. 40",
                "unii": "WZB9127XOA",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "high fructose corn syrup",
                "unii": "XY6UN3QB6S",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "polyethylene glycols",
                "unii": "3WJQ0SDW1A",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "propylene glycol",
                "unii": "6DC9Q167V3",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "water",
                "unii": "059QF0KO0R",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "saccharin sodium",
                "unii": "SB8ZUX40TY",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "sodium benzoate",
                "unii": "OJ245FE5EU",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "sorbitol",
                "unii": "506T60A25R",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    },
    "packaging_tree": [
        {
            "package_ndc_code": "50580-0111-08",
            "description": "240 mL in 1 BOTTLE, PLASTIC",
            "amount": "240",
            "unit": "mL",
            "form": "BOTTLE, PLASTIC"
        }
    ]
}

Multi-level Packaging

A single drug product can have any number of levels of packaging. It can also have multiple package combinations. Below is an example of a package that can have three different types of outer packaging:

{
    "package_ndc_code": "00002-1445-01",
    "description": "1 mL in 1 SYRINGE",
    "amount": "1",
    "unit": "mL",
    "form": "SYRINGE",
    "for_product": {
        "ndc_product_code": "00002-1445",
        "name": "Taltz",
        "active_ingredients": [
            {
                "name": "ixekizumab",
                "unii": "BTY153760O",
                "strength_number": "80",
                "strength_unit": "mg/1mL"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "Anhydrous Citric Acid",
                "unii": "XF417D3PSL",
                "strength_number": "0.51",
                "strength_unit": "mg/1mL"
            },
            {
                "name": "Polysorbate 80",
                "unii": "6OZP39ZG8H",
                "strength_number": "0.30",
                "strength_unit": "mg/1mL"
            },
            {
                "name": "Sodium Chloride",
                "unii": "451W47IQ8X",
                "strength_number": "11.69",
                "strength_unit": "mg/1mL"
            },
            {
                "name": "Trisodium Citrate Dihydrate",
                "unii": "B22547B95K",
                "strength_number": "5.11",
                "strength_unit": "mg/1mL"
            },
            {
                "name": "Water",
                "unii": "059QF0KO0R",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    },
    "packaging_tree": [
    {
        "package_ndc_code": "00002-1445-11",
        "description": "1 in 1 CARTON",
        "amount": "1",
        "unit": "1",
        "form": "CARTON",
        "content": {
            "package_ndc_code": "00002-1445-01",
            "description": "1 mL in 1 SYRINGE",
            "amount": "1",
            "unit": "mL",
            "form": "SYRINGE"
        }
    },
    {
        "package_ndc_code": "00002-1445-27",
        "description": "2 in 1 CARTON",
        "amount": "2",
        "unit": "1",
        "form": "CARTON",
        "content": {
            "package_ndc_code": "00002-1445-01",
            "description": "1 mL in 1 SYRINGE",
            "amount": "1",
            "unit": "mL",
            "form": "SYRINGE"
        }
    },
    {
        "package_ndc_code": "00002-1445-09",
        "description": "3 in 1 CARTON",
        "amount": "3",
        "unit": "1",
        "form": "CARTON",
        "content": {
            "package_ndc_code": "00002-1445-01",
            "description": "1 mL in 1 SYRINGE",
            "amount": "1",
            "unit": "mL",
            "form": "SYRINGE"
        }
    }
]
}
This package is a 1 mL in 1 SYRINGE that can be found in a 3 in 1 CARTON, 2 in 1 CARTON and 1 in 1 CARTON.

Kits

A package that contains multiple products is a kit. Each of these products is represented as a part that has its own product and packaging. The packaged parts are assumed to be contained within the kit packaging. An example of a kit with parts is shown below:

{
    "package_ndc_code": "68405-0018-06",
    "description": "1 in 1 KIT",
    "amount": "1",
    "unit": "1",
    "form": "KIT",
    "for_product": {
        "ndc_product_code": "68405-0018",
        "name": "Theraproxen-90",
        "active_ingredients": [
            {
                "name": "NAPROXEN",
                "unii": "57Y76R9ATQ",
                "strength_number": "250",
                "strength_unit": "mg/1"
            },
            {
                "name": ".GAMMA.-AMINOBUTYRIC ACID",
                "unii": "2ACZ6IPC6I",
                "strength_number": "100",
                "strength_unit": "mg/1"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "CROSCARMELLOSE SODIUM",
                "unii": "M28OL1HH48",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "POVIDONE",
                "unii": "FZ989GH94E",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MAGNESIUM STEARATE",
                "unii": "70097M6I30",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MAGNESIUM STEARATE",
                "unii": "70097M6I30",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "CELLULOSE, MICROCRYSTALLINE",
                "unii": "OP1R32D61U",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MALTODEXTRIN",
                "unii": "7CVR7L4A2D",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "GELATIN",
                "unii": "2G86QN327L",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    },
    "parts": [
    {
        "number": 1,
        "ndc_product_code": "52959-0190",
        "name": "NAPROXEN",
        "route": "ORAL",
        "amount": "60",
        "unit": "1",
        "dosage_form": "TABLET",
        "marketing_category": "ANDA",
        "application_number": "ANDA075927",
        "packaging_tree": [
            {
                "package_ndc_code": "52959-0190-30",
                "description": "60 in 1 BOTTLE",
                "amount": "60",
                "unit": "1",
                "form": "BOTTLE"
            }
        ],
        "active_ingredients": [
            {
                "name": "NAPROXEN",
                "unii": "57Y76R9ATQ",
                "strength_number": "250",
                "strength_unit": "mg/1"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "CROSCARMELLOSE SODIUM",
                "unii": "M28OL1HH48",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "POVIDONE",
                "unii": "FZ989GH94E",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MAGNESIUM STEARATE",
                "unii": "70097M6I30",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    },
    {
        "number": 2,
        "ndc_product_code": null,
        "name": "Theramine",
        "route": "ORAL",
        "amount": "90",
        "unit": "1",
        "dosage_form": "CAPSULE",
        "marketing_category": "MEDICAL FOOD",
        "application_number": null,
        "packaging_tree": [
            {
                "package_ndc_code": null,
                "description": "90 in 1 BOTTLE",
                "amount": "90",
                "unit": "1",
                "form": "BOTTLE"
            }
        ],
        "active_ingredients": [
            {
                "name": ".GAMMA.-AMINOBUTYRIC ACID",
                "unii": "2ACZ6IPC6I",
                "strength_number": "100",
                "strength_unit": "mg/1"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "MAGNESIUM STEARATE",
                "unii": "70097M6I30",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "CELLULOSE, MICROCRYSTALLINE",
                "unii": "OP1R32D61U",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MALTODEXTRIN",
                "unii": "7CVR7L4A2D",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "GELATIN",
                "unii": "2G86QN327L",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    }
],
    "packaging_tree": [
        {
            "package_ndc_code": "68405-0018-06",
            "description": "1 in 1 KIT",
            "amount": "1",
            "unit": "1",
            "form": "KIT"
        }
    ]
}
This package is a kit containing two parts, NAPROXEN and Theramine.

Note that a kit and its parts can still have multiple levels and combinations of packaging.

If a package is part of a kit, it will be represented like the example below:

{
    "package_ndc_code": "52959-0190-30",
    "description": "60 in 1 BOTTLE",
    "amount": "60",
    "unit": "1",
    "form": "BOTTLE",
    "for_part": {
        "ndc_product_code": "52959-0190",
        "name": "NAPROXEN",
        "active_ingredients": [
            {
                "name": "NAPROXEN",
                "unii": "57Y76R9ATQ",
                "strength_number": "250",
                "strength_unit": "mg/1"
            }
        ],
        "inactive_ingredients": [
            {
                "name": "CROSCARMELLOSE SODIUM",
                "unii": "M28OL1HH48",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "POVIDONE",
                "unii": "FZ989GH94E",
                "strength_number": null,
                "strength_unit": null
            },
            {
                "name": "MAGNESIUM STEARATE",
                "unii": "70097M6I30",
                "strength_number": null,
                "strength_unit": null
            }
        ]
    },
    "packaging_tree": [
        {
            "package_ndc_code": "52959-0190-30",
            "description": "60 in 1 BOTTLE",
            "amount": "60",
            "unit": "1",
            "form": "BOTTLE"
        }
    ],
    "part_of": [
    {
        "package_ndc_code": "68405-0018-06",
        "description": "1 in 1 KIT",
        "product": {
            "ndc_product_code": "68405-0018",
            "name": "Theraproxen-90"
        }
    },
    {
        "package_ndc_code": "68405-0016-36",
        "description": "1 in 1 KIT",
        "product": {
            "ndc_product_code": "68405-0016",
            "name": "Trepoxen-250"
        }
    },
    {
        "package_ndc_code": "68405-0180-06",
        "description": "1 in 1 KIT",
        "product": {
            "ndc_product_code": "68405-0180",
            "name": "Theraproxen"
        }
    }
]
}
This package is a found in Theraproxen-90, Theraproxen-250, and Theraproxen kits.

Historical Package Codes

When a manufacturer updates a product label and assigns new NDC package codes while keeping the same NDC product code, DrugBank now retains the older codes alongside the current set. Each package is tagged with a status so you can tell which codes reflect the current label and which are historical.

StatusMeaning
activeThe NDC package code appears on the manufacturer's current label.
inactiveThe NDC package code was on a prior label and has since been replaced. The package was discontinued or relabelled, but the code is kept so you can still resolve historical references.

Where the change appears

  • Clinical API — GET /products/:id/packages, GET /drugs/:id/packages, and GET /packages/:id all return active and historical packages, each with a status field. Looking up a previously dropped NDC package code now returns the historical record with status: "inactive" instead of a 404.
  • CSV / SQL exports — the product_packages table includes a status column. Historical codes appear as additional rows.
  • Full JSON drug export files — per-drug .json files include historical packages alongside active ones under each product's packages array, each with the same status field.

Integration guidance

No action is required if your integration treats unknown packages as transient — you will simply see more rows and a new field.

If your application distinguishes between currently-marketed and discontinued packaging, branch on status. Active packages reflect the current label; inactive packages are useful for resolving older records but should not be treated as available for sale.

Heads-up: if you relied on a 404 from GET /packages/:id to detect a discontinued package, switch to checking status == "inactive". JSON export consumers who do not expect discontinued entries may want to filter to status == "active" to preserve previous behaviour.

For full details on package attributes, see the Data Details page.