Tools / FDA Recall Scraper — Food, Drug & Device Enforcement Reports
FDA Recall Scraper — Food, Drug & Device Enforcement Reports
Search every US FDA product recall from the official openFDA enforcement API. Food, drug and device in one Actor and schema, 30 typed fields incl. Class I/II/III severity, recalling firm, reason, ISO dates, plus NDC/UPC/brand/substance on drug recalls.
Run it
curl -X POST https://fetchsmith.com/api/v1/run/fda-recall-scraper \
-H "Authorization: Bearer YOUR_KEY" -H "Content-Type: application/json" \
-d '{"classifications": ["Class I", "Class II"], "maxResults": 12, "productTypes": ["food", "drug", "device"], "reportDateFrom": "2026-06-01"}'
Output fields
productType recallNumber eventId status classification voluntaryMandated initialFirmNotification recallingFirm city state country productDescription productQuantity reasonForRecall distributionPattern codeInfo moreCodeInfo reportDate recallInitiationDate centerClassificationDate terminationDate brandName genericName manufacturerName substanceName productNdc packageNdc upc applicationNumber drugRoute rxcui unii splSetId
Sample output
{
"applicationNumber": null,
"brandName": "LEVOTHYROXINE SODIUM",
"centerClassificationDate": "2026-08-21",
"city": "Raleigh",
"classification": "Class II",
"codeInfo": "a) Lot # D2402430, D2402431, Exp Date: 10/31/2026. b) Lot #: D2402432, Exp. Date 10/31/2026; D2500180, Exp. Date 12/31/2026.",
"country": "United States",
"distributionPattern": "Nationwide within the United States",
"drugRoute": [],
"eventId": "99584",
"genericName": "LEVOTHYROXINE SODIUM",
"initialFirmNotification": "Letter",
"manufacturerName": "Accord Healthcare Inc.",
"moreCodeInfo": null,
"packageNdc": [
"16729-458-15"
],
"productDescription": "Levothyroxine Sodium Tablets, USP, 200 mcg (0.2 mg), packaged in a) 90-count bottles (NDC 16729-457-15) and b) 1000-count bottles (NDC 16729-457-17), Rx Only.",
"productNdc": [
"16729-447",
"16729-458"
],
"productQuantity": "N/A",
"productType": "drug",
"reasonForRecall": "Subpotent Drug",
"recallInitiationDate": "2026-08-06",
"recallNumber": "D-0785-2026",
"recallingFirm": "ACCORD HEALTHCARE, INC.",
"reportDate": "2026-09-02",
"rxcui": [],
"splSetId": null,
"state": "NC",
"status": "Ongoing",
"substanceName": [
"LEVOTHYROXINE SODIUM"
],
"terminationDate": null,
"unii": [],
"upc": [],
"voluntaryMandated": "Voluntary: Firm initiated"
}
Guides
- The FDA publishes every product recall as JSON with no API key — but you can't page past row 25,000, and only drugs come with a barcode — openFDA's enforcement API covers food, drug and device recalls with no auth. The catches are a hard 25,000-row skip cap and a barcode-lookup field that only exists on drug recalls.
Only publicly accessible pages are read. Respect the source site's terms when using the data.