Search openFDA drug, device, food and adverse-event datasets.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
openFDA's most valuable feature: aggregate over any dataset by a field to get a top-terms histogram (returns `results: [{term, count}]` instead of records). Use the '.exact' field suffix to count whole phrases. Example: endpoint 'drug/event', field 'patient.reaction.reactionmeddrapt.exact', search 'patient.drug.medicinalproduct:"aspirin"' → the most common reactions reported for aspirin.
The field to count/aggregate on (required), e.g. 'patient.reaction.reactionmeddrapt.exact' or 'classification'. Add '.exact' to count whole phrases rather than tokens.
The openFDA endpoint to query, e.g. 'drug/event', 'device/510k', 'food/enforcement'.
Max number of distinct terms to return (1–1000).
Optional Lucene filter applied before aggregation (same syntax as the search tools).
openFDA's most valuable feature: aggregate over any dataset by a field to get a top-terms histogram (returns `results: [{term, count}]` instead of records). Use the '.exact' field suffix to count whole phrases. Example: endpoint 'drug/event', field 'patient.reaction.reactionmeddrapt.exact', search 'patient.drug.medicinalproduct:"aspirin"' → the most common reactions reported for aspirin.
| Argument | Type | Description |
|---|---|---|
| field* | string | The field to count/aggregate on (required), e.g. 'patient.reaction.reactionmeddrapt.exact' or 'classification'. Add '.exact' to count whole phrases rather than tokens. |
| limit | integer | Max number of distinct terms to return (1–1000). |
| search | string | Optional Lucene filter applied before aggregation (same syntax as the search tools). |
| endpoint* | string | The openFDA endpoint to query, e.g. 'drug/event', 'device/510k', 'food/enforcement'. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"endpoint",
"field"
],
"properties": {
"field": {
"type": "string",
"description": "The field to count/aggregate on (required), e.g. 'patient.reaction.reactionmeddrapt.exact' or 'classification'. Add '.exact' to count whole phrases rather than tokens."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of distinct terms to return (1–1000)."
},
"search": {
"type": "string",
"description": "Optional Lucene filter applied before aggregation (same syntax as the search tools)."
},
"endpoint": {
"enum": [
"drug/event",
"drug/label",
"drug/ndc",
"drug/enforcement",
"drug/drugsfda",
"drug/shortages",
"drug/orangebook",
"device/event",
"device/510k",
"device/classification",
"device/enforcement",
"device/pma",
"device/recall",
"device/registrationlisting",
"device/udi",
"device/covid19serology",
"food/enforcement",
"food/event",
"other/nsde",
"other/substance",
"tobacco/problem"
],
"type": "string",
"description": "The openFDA endpoint to query, e.g. 'drug/event', 'device/510k', 'food/enforcement'."
}
}
}Generic escape hatch to query ANY supported openFDA endpoint with the full parameter set — covers the less-common datasets (device/pma, device/registrationlisting, device/udi, device/covid19serology, drug/orangebook, other/nsde, other/substance, tobacco/problem, etc.). Use the named search tools for the common datasets; use this for everything else or for advanced queries. openFDA REST API.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| count | string | Optional field to aggregate on (returns `results: [{term, count}]`); add '.exact' for whole phrases. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: e.g. brand_name:"x" (fields vary by endpoint) |
| endpoint* | string | The openFDA endpoint to query, e.g. 'drug/event', 'device/510k', 'food/enforcement'. |
Search 510(k) premarket notification clearances: devices cleared for market as substantially equivalent to a predicate, with applicant, decision, product code and dates. openFDA device/510k endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.device_name:"catheter" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.device_name:\"catheter\""
}
}
}Search the FDA device classification database: a device type's product code, device class (I/II/III), regulation number, medical specialty and submission requirements. openFDA device/classification endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: medical_specialty_description:"Cardiovascular" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: medical_specialty_description:\"Cardiovascular\""
}
}
}Search the MAUDE database: medical device adverse events — reported injuries, deaths and malfunctions involving medical devices. openFDA device/event endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: device.generic_name:"pacemaker" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: device.generic_name:\"pacemaker\""
}
}
}Search medical device recalls: recalled devices with the reason, recalling firm, classification, product code and status. openFDA device/recall endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: product_res_number:"Z-1234-2019" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: product_res_number:\"Z-1234-2019\""
}
}
}Search the FDA Adverse Event Reporting System (FAERS): reports of drug side effects, adverse reactions and medication errors submitted to the FDA. Returns individual case reports. openFDA drug/event endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: patient.drug.medicinalproduct:"aspirin" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: patient.drug.medicinalproduct:\"aspirin\""
}
}
}Search Structured Product Labeling (SPL): the official prescribing information for drugs — indications, warnings, dosage, adverse reactions, drug interactions and more. openFDA drug/label endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.brand_name:"tylenol" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.brand_name:\"tylenol\""
}
}
}Search the National Drug Code (NDC) directory: every drug product's code, name, dosage form, route, active ingredients, marketing status and labeler. openFDA drug/ndc endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: finished:true+AND+dosage_form:"tablet" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: finished:true+AND+dosage_form:\"tablet\""
}
}
}Search drug recall enforcement reports: recalled drug products with the reason, classification (Class I/II/III), recalling firm, distribution and status. openFDA drug/enforcement endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: classification:"Class I" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: classification:\"Class I\""
}
}
}Search current and resolved drug shortages: the affected product, status, reason, availability and related dates. openFDA drug/shortages endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: status:"Current" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: status:\"Current\""
}
}
}Search Drugs@FDA: FDA-approved drug products and their applications (NDA/ANDA/BLA), sponsors, approval dates, products and submissions. openFDA drug/drugsfda endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.brand_name:"humira" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: openfda.brand_name:\"humira\""
}
}
}Search the CFSAN Adverse Event Reporting System (CAERS): adverse events and product complaints for foods, dietary supplements and cosmetics. openFDA food/event endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: products.industry_name:"Dietary Conventional Foods/Meal Replacements" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: products.industry_name:\"Dietary Conventional Foods/Meal Replacements\""
}
}
}Search food recall enforcement reports: recalled food products with the reason, classification (Class I/II/III), recalling firm, distribution state and status. openFDA food/enforcement endpoint.
| Argument | Type | Description |
|---|---|---|
| skip | integer | Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records). |
| sort | string | Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'. |
| limit | integer | Max number of records to return (1–1000). Omit for the API default of 1. |
| search | string | Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: state:"CA" |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: state:\"CA\""
}
}
}{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"endpoint"
],
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "Number of records to skip, for pagination (0–25000; skip+limit reaches up to ~26000 records)."
},
"sort": {
"type": "string",
"description": "Sort order, as `field:asc` or `field:desc`, e.g. 'receivedate:desc'."
},
"count": {
"type": "string",
"description": "Optional field to aggregate on (returns `results: [{term, count}]`); add '.exact' for whole phrases."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1,
"description": "Max number of records to return (1–1000). Omit for the API default of 1."
},
"search": {
"type": "string",
"description": "Lucene-style query over this dataset's fields: 'field:term', AND with '+AND+', OR with a space, exact phrase via a '.exact' field suffix with quotes, ranges as '[low+TO+high]' (dates like '[20040101+TO+20081231]'). Example: e.g. brand_name:\"x\" (fields vary by endpoint)"
},
"endpoint": {
"enum": [
"drug/event",
"drug/label",
"drug/ndc",
"drug/enforcement",
"drug/drugsfda",
"drug/shortages",
"drug/orangebook",
"device/event",
"device/510k",
"device/classification",
"device/enforcement",
"device/pma",
"device/recall",
"device/registrationlisting",
"device/udi",
"device/covid19serology",
"food/enforcement",
"food/event",
"other/nsde",
"other/substance",
"tobacco/problem"
],
"type": "string",
"description": "The openFDA endpoint to query, e.g. 'drug/event', 'device/510k', 'food/enforcement'."
}
}
}