DailyMed

App · Research & Academia · 10 actions

Look up any FDA drug label from a workflow, straight from the National Library of Medicine. Search over 159,000 labels by drug name, manufacturer, National Drug Code, RxNorm code, ingredient, drug class, controlled substance schedule or publication date, then read the label itself as plain text: the boxed warning, what the medicine treats, how to take it, the warnings, the side effects and the interactions. Get a medicine's package codes, its strengths and pack sizes, its carton and tablet photographs, and every version of its label with the date each was published, so a scheduled workflow can notice the moment a label changes. Prescription, over-the-counter, animal and vaccine labels are all covered. Every action reads: nothing here changes anything. No account or API key required.

Actions

ActionWhat it does
Find active ingredientsFind an active ingredient and the FDA's own code for it.
Find drug classesBrowse the pharmacologic classes DailyMed files labels under: what a medicine is, how it works, what it does to the body, and what it is made of.
Find drug namesFind the drug names DailyMed holds, brand and generic, and which kind each one is.
Find RxNorm codesFind the RxNorm code for a medicine, which is the identifier electronic health records and prescribing systems use.
Get a label's packaging and ingredientsGet every product on one drug's label with its active ingredients, its strength, and the package sizes it is sold in with the code for each.
List a label's NDC codesList every National Drug Code on one drug's label, one per package size.
List a label's picturesList the pictures published with a drug's label: the carton and bottle artwork, the tablet itself, and any diagrams the label carries.
List a label's versionsList every version of one drug's label, with the date each was published and a download of that exact version.
Read a drug labelRead the words of a drug's FDA label: the boxed warning, what it treats, how to take it, who must not take it, the warnings, the side effects, the interactions, the overdose advice and the rest, as plain text a summarizing or drafting step can use directly.
Search drug labelsFind FDA drug labels by any combination of a drug name, the company on the label, a National Drug Code, an RxNorm code, an ingredient, a pharmacologic class, a controlled substance schedule, whether the medicine carries a boxed warning, how it was approved, and when the label was published.

Find active ingredients

Find an active ingredient and the FDA's own code for it. That code is what finds every product containing the ingredient, combination products included, which a search by drug name misses: searching 'ibuprofen' by name finds the ibuprofen products, while searching by its ingredient code finds the cold-and-flu remedies containing it too.

Inputs

Ingredient nameactive_moietytext
An active ingredient's name, or part of one. Leave it empty to browse them all.
Ingredient codeunii_codetext
Look one up by its code, to get the name back. Useful for turning a code from another system into something readable.
RxNorm coderxcuitext
Only the ingredients in this RxNorm concept, which is how to get from a prescribing system's code to what is actually in the medicine.
How many to returnlimitnumber
How many records to return. DailyMed hands back 100 at a time and silently ignores a larger request, so anything above that is gathered over as many requests as it takes.From 1 to 500. Default: 25.

Outputs

countnumber
How many came back.
ingredientslist
The ingredients found, alphabetically.
more_availabletrue/false
Whether raising the limit would return more.
total_matchingnumber
How many match altogether.
Example output
{
  "count": 1,
  "ingredients": [
    {
      "name": "IBUPROFEN",
      "unii_code": "WK2XYI10QM"
    }
  ],
  "more_available": false,
  "total_matching": 1
}

Find drug classes

Browse the pharmacologic classes DailyMed files labels under: what a medicine is, how it works, what it does to the body, and what it is made of. Search by class name, or give an ingredient's code to get every class that ingredient belongs to. A class name from here goes straight into the drug class field on 'Search drug labels'.

Inputs

Class nameclass_nametext
A class name, or part of one. Leave it empty to browse them all.
Kind of classclass_typetext
Narrow to one kind of class. Every kind by default. 'What the medicine is' is the one most people mean: it holds the familiar names such as antibiotic and anti-inflammatory.One of: all (Every kind), epc (What the medicine is (established class)), moa (How it works (mechanism of action)), pe (What it does to the body (physiologic effect)), ci (What it is made of (chemical or ingredient)).
Active ingredient codeunii_codetext
Only the classes this ingredient belongs to. 'Find active ingredients' turns an ingredient name into one of these codes.
How many to returnlimitnumber
How many records to return. DailyMed hands back 100 at a time and silently ignores a larger request, so anything above that is gathered over as many requests as it takes.From 1 to 500. Default: 25.

Outputs

countnumber
How many came back.
drug_classeslist
The classes found, alphabetically.
more_availabletrue/false
Whether raising the limit would return more.
total_matchingnumber
How many match altogether.
Example output
{
  "count": 2,
  "drug_classes": [
    {
      "code": "N0000175722",
      "coding_system": "2.16.840.1.113883.6.345",
      "kind": "Established pharmacologic class",
      "name": "Nonsteroidal Anti-inflammatory Drug"
    },
    {
      "code": "N0000000160",
      "coding_system": "2.16.840.1.113883.6.345",
      "kind": "Mechanism of action",
      "name": "Cyclooxygenase Inhibitors"
    }
  ],
  "more_available": false,
  "total_matching": 2
}

Find drug names

Find the drug names DailyMed holds, brand and generic, and which kind each one is. Use it to check a spelling before searching, to turn a brand into its generic, or to list everything one company sells. Labels spell names their own way, so this is the step that turns what somebody typed into something that will find labels.

Inputs

Drug namedrug_nametext
A name, or part of one. Leave it empty to list everything, which is over forty thousand names.
Kind of namename_typetext
Whether the name given is a brand name, a generic name, or either. Either by default. Narrowing to brand names is what separates 'Advil' from the hundreds of store-brand ibuprofen labels that also mention it.One of: both (Either a brand or a generic name), brand (A brand name only), generic (A generic name only).
Manufacturermanufacturertext
Only names made by this company. Handy for listing a manufacturer's whole range in one step.
How many to returnlimitnumber
How many records to return. DailyMed hands back 100 at a time and silently ignores a larger request, so anything above that is gathered over as many requests as it takes.From 1 to 500. Default: 25.

Outputs

countnumber
How many came back.
more_availabletrue/false
Whether raising the limit would return more.
nameslist
The names found, alphabetically.
total_matchingnumber
How many match altogether.
Example output
{
  "count": 2,
  "more_available": false,
  "names": [
    {
      "kind": "brand",
      "name": "XANAX"
    },
    {
      "kind": "brand",
      "name": "XANAX XR"
    }
  ],
  "total_matching": 2
}

Find RxNorm codes

Find the RxNorm code for a medicine, which is the identifier electronic health records and prescribing systems use. Search by how the medicine is written, or give a code to see every name it goes by. This is the bridge between a prescription in another system and the label here: take the code from a record, and 'Search drug labels' finds every label it belongs to.

Inputs

Medicinerxstringtext
How the medicine is written, or part of it. RxNorm puts the strength and form in the name, so 'ibuprofen 200' narrows it usefully.
RxNorm coderxcuitext
Look one up by its code, to get every name it goes by.
Kind of nameterm_typetext
Narrow to one kind of RxNorm name. Every code has several, so leaving this empty returns the same medicine more than once. Prescribable name is the one meant for people to read.One of: PSN (Prescribable name), SCD (Clinical drug (generic, with strength and form)), SBD (Branded drug (with strength and form)), GPCK (Generic pack), BPCK (Brand pack), SY (Synonym).
How many to returnlimitnumber
How many records to return. DailyMed hands back 100 at a time and silently ignores a larger request, so anything above that is gathered over as many requests as it takes.From 1 to 500. Default: 25.

Outputs

conceptslist
The RxNorm concepts found.
countnumber
How many came back.
more_availabletrue/false
Whether raising the limit would return more.
total_matchingnumber
How many match altogether.
Example output
{
  "concepts": [
    {
      "name": "IBUPROFEN 200 MG ORAL CAPSULE",
      "rxcui": "310964",
      "term_type": "PSN"
    },
    {
      "name": "IBUPROFEN 200 MG ORAL CAPSULE",
      "rxcui": "310964",
      "term_type": "SCD"
    }
  ],
  "count": 2,
  "more_available": false,
  "total_matching": 2
}

Get a label's packaging and ingredients

Get every product on one drug's label with its active ingredients, its strength, and the package sizes it is sold in with the code for each. A medicine sold in four strengths is four products here, each with its own codes, which is what a formulary, a stock list or a price file needs. The strengths are read from the label document, because DailyMed's packaging data repeats every strength on the label under every product.

Inputs

MedicinelabeltextRequired
Which label to read. Give a drug's brand or generic name, or the Set ID an earlier 'Search drug labels' step returned. A name is answered with the most recently published label carrying it, and the result says how many others carry it too: 'ibuprofen' is over a thousand labels, one per manufacturer, so search first and pass a Set ID when it has to be a particular company's.

Outputs

drugtext
The drug part of that title.
label_urltext
The label's page on DailyMed.
labelertext
The company whose name is on the label.
matched_bytext
Whether a Set ID was given or a name was looked up.
matched_label_countnumber
How many labels carried the name given.
package_countnumber
How many package sizes there are across all of them.
product_countnumber
How many products the label carries.
productslist
Every product on the label, one per strength.
published_date_isotext
When that version was published, as YYYY-MM-DD.
searched_fortext
The name that was looked up, when one was.
setidtext
The label's Set ID.
titletext
The label's full title.
versiontext
Which version this packaging belongs to.
Example output
{
  "drug": "XANAX (ALPRAZOLAM) TABLET",
  "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
  "matched_by": "drug_name",
  "matched_label_count": 5,
  "package_count": 4,
  "product_count": 1,
  "products": [
    {
      "active_ingredients": [
        {
          "name": "ALPRAZOLAM",
          "strength": "0.25 mg",
          "unii_code": "YU55MQ3IZY"
        }
      ],
      "generic_name": "alprazolam",
      "name": "Xanax",
      "package_count": 4,
      "packages": [
        {
          "description": "100 in 1 BOTTLE",
          "ndc": "0009-0029-01"
        },
        {
          "description": "500 in 1 BOTTLE",
          "ndc": "0009-0029-02"
        },
        {
          "description": "1000 in 1 BOTTLE",
          "ndc": "0009-0029-14"
        },
        {
          "description": "100 in 1 BOTTLE, UNIT-DOSE",
          "ndc": "0009-0029-46"
        }
      ],
      "product_code": "0009-0029"
    }
  ],
  "published_date_iso": "2026-02-26",
  "searched_for": "Xanax",
  "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
  "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
  "version": "30"
}

List a label's NDC codes

List every National Drug Code on one drug's label, one per package size. These are the codes a pharmacy system, an inventory record, an insurance claim and a barcode all use, so this is the step that turns a drug name into the codes another system will recognise.

Inputs

MedicinelabeltextRequired
Which label to read. Give a drug's brand or generic name, or the Set ID an earlier 'Search drug labels' step returned. A name is answered with the most recently published label carrying it, and the result says how many others carry it too: 'ibuprofen' is over a thousand labels, one per manufacturer, so search first and pass a Set ID when it has to be a particular company's.
How many to returnlimitnumber
How many records to return. A label rarely has more than a handful, so leaving this empty returns up to 100, which is all of them for almost every label.From 1 to 500. Default: 100.

Outputs

countnumber
How many came back.
drugtext
The drug part of that title.
label_urltext
The label's page on DailyMed.
labelertext
The company whose name is on the label.
matched_bytext
Whether a Set ID was given or a name was looked up.
matched_label_countnumber
How many labels carried the name given.
more_availabletrue/false
Whether raising the limit would return more.
ndc_codeslist
The National Drug Codes on this label, one per package size. Each is what a pharmacy system, a claim or a barcode carries.
published_date_isotext
When that version was published, as YYYY-MM-DD.
searched_fortext
The name that was looked up, when one was.
setidtext
The label's Set ID.
titletext
The label's full title.
total_matchingnumber
How many the label has altogether.
versiontext
Which version these codes belong to.
Example output
{
  "count": 4,
  "drug": "XANAX (ALPRAZOLAM) TABLET",
  "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
  "matched_by": "drug_name",
  "matched_label_count": 5,
  "more_available": true,
  "ndc_codes": [
    "0009-0029-01",
    "0009-0029-02",
    "0009-0029-14",
    "0009-0029-46"
  ],
  "published_date_iso": "2026-02-26",
  "searched_for": "Xanax",
  "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
  "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
  "total_matching": 13,
  "version": "30"
}

List a label's pictures

List the pictures published with a drug's label: the carton and bottle artwork, the tablet itself, and any diagrams the label carries. Each comes back as a direct image address, ready to put in a message, a page or a document without downloading anything first.

Inputs

MedicinelabeltextRequired
Which label to read. Give a drug's brand or generic name, or the Set ID an earlier 'Search drug labels' step returned. A name is answered with the most recently published label carrying it, and the result says how many others carry it too: 'ibuprofen' is over a thousand labels, one per manufacturer, so search first and pass a Set ID when it has to be a particular company's.
How many to returnlimitnumber
How many records to return. A label rarely has more than a handful, so leaving this empty returns up to 100, which is all of them for almost every label.From 1 to 500. Default: 100.

Outputs

countnumber
How many came back.
drugtext
The drug part of that title.
imageslist
The pictures, in the order the label carries them.
label_urltext
The label's page on DailyMed.
labelertext
The company whose name is on the label.
matched_bytext
Whether a Set ID was given or a name was looked up.
matched_label_countnumber
How many labels carried the name given.
more_availabletrue/false
Whether raising the limit would return more.
published_date_isotext
When that version was published, as YYYY-MM-DD.
searched_fortext
The name that was looked up, when one was.
setidtext
The label's Set ID.
titletext
The label's full title.
total_matchingnumber
How many the label has altogether.
versiontext
Which version these pictures belong to.
Example output
{
  "count": 1,
  "drug": "XANAX (ALPRAZOLAM) TABLET",
  "images": [
    {
      "media_type": "image/jpeg",
      "name": "xanax-025mg-bottle.jpg",
      "url": "https://dailymed.nlm.nih.gov/dailymed/image.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f&name=xanax-025mg-bottle.jpg"
    }
  ],
  "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
  "matched_by": "drug_name",
  "matched_label_count": 5,
  "more_available": false,
  "published_date_iso": "2026-02-26",
  "searched_for": "Xanax",
  "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
  "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
  "total_matching": 1,
  "version": "30"
}

List a label's versions

List every version of one drug's label, with the date each was published and a download of that exact version. This is how a workflow notices that a label has been revised: the result says how many days ago the last change was, so a scheduled step can act when that number resets. Older versions are kept permanently, so a label from a decade ago is still downloadable.

Inputs

MedicinelabeltextRequired
Which label to read. Give a drug's brand or generic name, or the Set ID an earlier 'Search drug labels' step returned. A name is answered with the most recently published label carrying it, and the result says how many others carry it too: 'ibuprofen' is over a thousand labels, one per manufacturer, so search first and pass a Set ID when it has to be a particular company's.

Outputs

countnumber
How many versions there are.
days_since_last_updatenumber
How many days since the label last changed. This is the number a scheduled workflow watching for a revision reads.
drugtext
The drug part of that title.
first_published_date_isotext
When the first version was published.
label_urltext
The label's page on DailyMed.
labelertext
The company whose name is on the label.
latest_published_date_isotext
When that version was published, as YYYY-MM-DD.
latest_versiontext
The version DailyMed currently serves.
matched_bytext
Whether a Set ID was given or a name was looked up.
matched_label_countnumber
How many labels carried the name given.
pdf_urltext
A direct download of the current version as a PDF.
searched_fortext
The name that was looked up, when one was.
setidtext
The label's Set ID.
titletext
The label's full title.
versionslist
Every version, newest first.
Example output
{
  "count": 2,
  "days_since_last_update": 199,
  "drug": "XANAX (ALPRAZOLAM) TABLET",
  "first_published_date_iso": "2025-12-12",
  "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
  "latest_published_date_iso": "2026-02-26",
  "latest_version": "30",
  "matched_by": "drug_name",
  "matched_label_count": 5,
  "pdf_url": "https://dailymed.nlm.nih.gov/dailymed/downloadpdffile.cfm?setId=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "searched_for": "Xanax",
  "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
  "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
  "versions": [
    {
      "days_since_published": 199,
      "published_date": "Feb 26, 2026",
      "published_date_iso": "2026-02-26",
      "version": "30",
      "zip_url": "https://dailymed.nlm.nih.gov/dailymed/getFile.cfm?type=zip&setid=388e249d-b9b6-44c3-9f8f-880eced0239f&version=30"
    },
    {
      "days_since_published": 275,
      "published_date": "Dec 12, 2025",
      "published_date_iso": "2025-12-12",
      "version": "29",
      "zip_url": "https://dailymed.nlm.nih.gov/dailymed/getFile.cfm?type=zip&setid=388e249d-b9b6-44c3-9f8f-880eced0239f&version=29"
    }
  ]
}

Read a drug label

Read the words of a drug's FDA label: the boxed warning, what it treats, how to take it, who must not take it, the warnings, the side effects, the interactions, the overdose advice and the rest, as plain text a summarizing or drafting step can use directly. Narrow it to the sections you want, or take the whole label. Ask by drug name or by Set ID. The boxed warning also comes back on its own, so a safety check is one step and one field.

Inputs

MedicinelabeltextRequired
Which label to read. Give a drug's brand or generic name, or the Set ID an earlier 'Search drug labels' step returned. A name is answered with the most recently published label carrying it, and the result says how many others carry it too: 'ibuprofen' is over a thousand labels, one per manufacturer, so search first and pass a Set ID when it has to be a particular company's.
Sectionssectionslist
Which parts of the label to return. Leave everything unticked for the whole label, which for a prescription medicine can run past fifty thousand words. The boxed warning is reported on its own whichever sections are picked.One or more of: boxed_warning (Boxed warning), indications (What it treats), dosage (How to take it), contraindications (Who must not take it), warnings (Warnings and precautions), side_effects (Side effects), interactions (Drug interactions), specific_populations (Pregnancy, children and older adults), abuse_and_dependence (Abuse and dependence), overdose, and 6 more.

Outputs

boxed_warningtext
The boxed warning in full, ready to put in a message without picking it out of the section list.
days_since_publishednumber
How many days ago that was.
document_typetext
What kind of label this is: a prescription medicine, an over-the-counter one, a vaccine, an animal medicine.
drugtext
The drug part of that title.
effective_date_isotext
The date the company itself put on this label, which is a different thing and is often years earlier. Watch the published date, not this one, for a label that has changed.
has_boxed_warningtrue/false
Whether this label carries a boxed warning, the FDA's most serious. True or false whichever sections were asked for.
label_urltext
The label's page on DailyMed.
labelertext
The company whose name is on the label.
matched_bytext
Whether a Set ID was given or a name was looked up: 'setid' or 'drug_name'.
matched_label_countnumber
How many labels carried the name given. Anything above 1 means this is one company's label out of several for the same drug.
pdf_urltext
A direct download of the label as a PDF.
productslist
What the label says the medicine is.
published_datetext
When DailyMed published this version.
published_date_isotext
The same date as YYYY-MM-DD.
searched_fortext
The name that was looked up, when one was.
section_countnumber
How many sections came back.
sectionslist
The label's sections, in the order the label has them.
sections_omittednumber
How many the Sections filter left out.
setidtext
The label's Set ID.
texttext
Every returned section as one piece of plain text under its headings, which is what a summarizing or drafting step reads.
titletext
The label's full title, drug and labeler together.
versiontext
Which version of the label this is.
Example output
{
  "boxed_warning": "- Concomitant use of benzodiazepines and opioids may result in profound sedation, respiratory depression, coma, and death. Reserve concomitant prescribing of these drugs for patients for whom alternative treatment options are inadequate.\n- The use of benzodiazepines, including XANAX, exposes users to risks of abuse, misuse, and addiction, which can lead to overdose or death.",
  "days_since_published": 199,
  "document_type": "Human Prescription Drug Label",
  "drug": "XANAX (ALPRAZOLAM) TABLET",
  "effective_date_iso": "2023-01-18",
  "has_boxed_warning": true,
  "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
  "matched_by": "drug_name",
  "matched_label_count": 5,
  "pdf_url": "https://dailymed.nlm.nih.gov/dailymed/downloadpdffile.cfm?setId=388e249d-b9b6-44c3-9f8f-880eced0239f",
  "products": [
    {
      "active_ingredients": [
        {
          "name": "ALPRAZOLAM",
          "strength": "0.25 mg",
          "unii_code": "YU55MQ3IZY"
        },
        {
          "name": "ALPRAZOLAM",
          "strength": "0.5 mg",
          "unii_code": "YU55MQ3IZY"
        },
        {
          "name": "ALPRAZOLAM",
          "strength": "1 mg",
          "unii_code": "YU55MQ3IZY"
        },
        {
          "name": "ALPRAZOLAM",
          "strength": "2 mg",
          "unii_code": "YU55MQ3IZY"
        }
      ],
      "application_number": "NDA018276",
      "approval_type": "NDA",
      "dea_schedule": "CIV",
      "dosage_form": "TABLET",
      "generic_name": "alprazolam",
      "name": "Xanax",
      "product_codes": [
        "0009-0029",
        "0009-0055",
        "0009-0090",
        "0009-0094"
      ],
      "route": "ORAL"
    }
  ],
  "published_date": "Feb 26, 2026",
  "published_date_iso": "2026-02-26",
  "searched_for": "Xanax",
  "section_count": 2,
  "sections": [
    {
      "characters": 377,
      "code": "34066-1",
      "code_name": "Boxed warning",
      "group": "boxed_warning",
      "group_name": "Boxed warning",
      "heading": "WARNING: RISKS FROM CONCOMITANT USE WITH OPIOIDS; ABUSE, MISUSE, AND ADDICTION; and DEPENDENCE AND WITHDRAWAL REACTIONS",
      "text": "- Concomitant use of benzodiazepines and opioids may result in profound sedation, respiratory depression, coma, and death. Reserve concomitant prescribing of these drugs for patients for whom alternative treatment options are inadequate.\n- The use of benzodiazepines, including XANAX, exposes users to risks of abuse, misuse, and addiction, which can lead to overdose or death.",
      "truncated": false
    },
    {
      "characters": 172,
      "code": "34067-9",
      "code_name": "Indications and usage",
      "group": "indications",
      "group_name": "What it treats",
      "heading": "1 INDICATIONS AND USAGE",
      "text": "XANAX is indicated for the acute treatment of generalized anxiety disorder (GAD) in adults and the treatment of panic disorder (PD), with or without agoraphobia, in adults.",
      "truncated": false
    }
  ],
  "sections_omitted": 20,
  "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
  "text": "# WARNING: RISKS FROM CONCOMITANT USE WITH OPIOIDS; ABUSE, MISUSE, AND ADDICTION; and DEPENDENCE AND WITHDRAWAL REACTIONS\n- Concomitant use of benzodiazepines and opioids may result in profound sedation, respiratory depression, coma, and death.\n\n# 1 INDICATIONS AND USAGE\nXANAX is indicated for the acute treatment of generalized anxiety disorder (GAD) in adults.",
  "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
  "version": "30"
}

Search drug labels

Find FDA drug labels by any combination of a drug name, the company on the label, a National Drug Code, an RxNorm code, an ingredient, a pharmacologic class, a controlled substance schedule, whether the medicine carries a boxed warning, how it was approved, and when the label was published. Every result comes back with the Set ID the other actions read, the publication date as a real date, and links to the label's page, its PDF and its archive. Searching by publication date is what a scheduled workflow watching for new or revised labels runs on.

Inputs

Drug namedrug_nametext
A brand or generic name, or part of one. Matched as labels spell it, so use 'Find drug names' if a search comes back empty.
Kind of namename_typetext
Whether the name given is a brand name, a generic name, or either. Either by default. Narrowing to brand names is what separates 'Advil' from the hundreds of store-brand ibuprofen labels that also mention it.One of: both (Either a brand or a generic name), brand (A brand name only), generic (A generic name only).
Kind of medicinelabel_typetext
Narrow to one kind of label. Leave it empty for all of them. Prescription and over-the-counter are separate here, as are human and animal medicines, because DailyMed keeps them as different kinds of label.One of: human_prescription (Prescription medicines), human_otc (Over-the-counter medicines), animal_prescription (Prescription animal medicines), animal_otc (Over-the-counter animal medicines), vaccine (Vaccines), dietary_supplement (Dietary supplements).
Company on the labellabelertext
The company whose name appears on the label, or part of it. This is the company responsible for the product, which for a store brand is the retailer rather than the factory.
Published on or afterpublished_fromdate
Only labels published on or after this date. On its own, this is the filter a workflow checking for new and revised labels runs on.
Published on or beforepublished_todate
Only labels published on or before this date. Give both dates for a window such as one month or one quarter.
Boxed warningboxed_warningtext
Narrow to medicines that do or do not carry a boxed warning, the FDA's most serious. Leave it empty for both.One of: true (Only medicines with a boxed warning), false (Only medicines without one).
Controlled substance scheduledea_scheduletext
Narrow to one DEA schedule, or to medicines that are not controlled at all. Schedule I substances have no marketed labels, so that choice correctly comes back empty.One of: none (Not a controlled substance), schedule_2 (Schedule II), schedule_3 (Schedule III), schedule_4 (Schedule IV), schedule_5 (Schedule V), schedule_1 (Schedule I).
Drug classdrug_classtext
Narrow to one pharmacologic class: what the medicine is, how it works, what it does to the body, or what it is made of. Pick from the list, which holds every class DailyMed indexes, or type a class name and it will be matched. 'Find drug classes' is the way to browse them.
How it was approvedapproval_pathwaytext
Narrow by the route the medicine reached the market on. This is the filter that separates FDA-approved medicines from homeopathic and other unapproved products, which DailyMed publishes alongside them.One of: brand (Brand-name medicine (new drug application)), generic (Generic medicine (abbreviated application)), authorized_generic (Authorized generic), biologic (Biologic (biologics licence)), otc_monograph (Over-the-counter monograph medicine), unapproved_homeopathic (Homeopathic, not FDA approved), unapproved_other (Other medicine not FDA approved), animal_brand (Brand-name animal medicine), animal_generic (Generic animal medicine).
National Drug Codendctext
Find the label for one exact package, by the code on its box. This is the step that turns a code from a pharmacy system, a claim or a barcode into a label.
RxNorm coderxcuitext
Find every label for one RxNorm concept, which is how an electronic health record names a medicine. 'Find RxNorm codes' turns a drug name into one.
Active ingredient codeunii_codetext
Find every label containing one active ingredient, combination products included, which a name search misses. 'Find active ingredients' turns an ingredient name into one of these codes.
FDA application numberapplication_numbertext
Find every label approved under one FDA application. 'Read a drug label' returns the application number for a medicine, so this is how to find its authorized generics and repackagers.
Orderordertext
Most recently published first by default, which is the current label for a drug. Earliest first reaches the oldest labels DailyMed holds, some going back to 2005.One of: newest (Most recently published first), oldest (Earliest published first).
How many to returnlimitnumber
How many records to return. DailyMed hands back 100 at a time and silently ignores a larger request, so anything above that is gathered over as many requests as it takes.From 1 to 500. Default: 25.

Outputs

countnumber
How many labels came back.
drug_class_matchedtext
The drug class the search actually ran against, when one was given. Worth reading when the class was typed rather than picked.
labelslist
The labels found, in the order asked for.
more_availabletrue/false
Whether raising the limit would return more.
ordertext
Which way round the results were returned.
published_fromtext
The earliest publication date searched for.
published_totext
The latest publication date searched for.
searched_attext
The date this search ran, as YYYY-MM-DD.
total_matchingnumber
How many labels match altogether. Empty when both a from and a to date were given, because DailyMed can only count one side of a date range.
Example output
{
  "count": 2,
  "drug_class_matched": null,
  "labels": [
    {
      "brand_name": "XANAX XR",
      "days_since_published": 102,
      "dosage_form": "TABLET, EXTENDED RELEASE",
      "drug": "XANAX XR (ALPRAZOLAM) TABLET, EXTENDED RELEASE",
      "generic_name": "ALPRAZOLAM",
      "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=c8990714-c2f5-4b0c-9f1c-91d77156d962",
      "labeler": "VIATRIS SPECIALTY LLC",
      "pdf_url": "https://dailymed.nlm.nih.gov/dailymed/downloadpdffile.cfm?setId=c8990714-c2f5-4b0c-9f1c-91d77156d962",
      "published_date": "Jun 03, 2026",
      "published_date_iso": "2026-06-03",
      "setid": "c8990714-c2f5-4b0c-9f1c-91d77156d962",
      "title": "XANAX XR (ALPRAZOLAM) TABLET, EXTENDED RELEASE [VIATRIS SPECIALTY LLC]",
      "version": "26",
      "zip_url": "https://dailymed.nlm.nih.gov/dailymed/downloadzipfile.cfm?setId=c8990714-c2f5-4b0c-9f1c-91d77156d962"
    },
    {
      "brand_name": "XANAX",
      "days_since_published": 199,
      "dosage_form": "TABLET",
      "drug": "XANAX (ALPRAZOLAM) TABLET",
      "generic_name": "ALPRAZOLAM",
      "label_url": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=388e249d-b9b6-44c3-9f8f-880eced0239f",
      "labeler": "PHARMACIA & UPJOHN COMPANY LLC",
      "pdf_url": "https://dailymed.nlm.nih.gov/dailymed/downloadpdffile.cfm?setId=388e249d-b9b6-44c3-9f8f-880eced0239f",
      "published_date": "Feb 26, 2026",
      "published_date_iso": "2026-02-26",
      "setid": "388e249d-b9b6-44c3-9f8f-880eced0239f",
      "title": "XANAX (ALPRAZOLAM) TABLET [PHARMACIA & UPJOHN COMPANY LLC]",
      "version": "30",
      "zip_url": "https://dailymed.nlm.nih.gov/dailymed/downloadzipfile.cfm?setId=388e249d-b9b6-44c3-9f8f-880eced0239f"
    }
  ],
  "more_available": true,
  "order": "newest",
  "published_from": null,
  "published_to": null,
  "searched_at": "2026-09-13",
  "total_matching": 5
}

On this page