FDA Recalls API Scraper - Food, Drug & Device Enforcement avatar

FDA Recalls API Scraper - Food, Drug & Device Enforcement

Pricing

from $5.00 / 1,000 results

Go to Apify Store
FDA Recalls API Scraper - Food, Drug & Device Enforcement

FDA Recalls API Scraper - Food, Drug & Device Enforcement

FDA recalls API scraper: food, drug, device and cosmetic enforcement reports straight from the FDA's public openFDA endpoints - product, firm, city, state, classification, reason, status and dates. Filter by product type, class or date range. No API key.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Flash Scrape

Flash Scrape

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

7 hours ago

Last modified

Share

FDA Recall Scraper - Drug, Device & Food Recalls, openFDA

An FDA recalls API scraper: food, drug and device enforcement reports straight from the FDA's public openFDA endpoints, searchable by product, firm, classification and date.

What the FDA recalls API returns

This FDA recall scraper turns the official openFDA enforcement data into a clean, queryable feed — one flat row per recall with the recall number, product type, classification + plain-English severity (Class I/II/III → High/Medium/Low), status, recalling firm, brand / generic / manufacturer, reason for recall, distribution, ISO dates, and location. Pull drug, medical-device, and food recalls in one run, filter by severity / status / state / date / keyword, and export to CSV, JSON, or Excel.

Built for pharma & medtech regulatory and quality teams, consultancies, biotech investors, and journalists who need a structured recall feed for monitoring — not openFDA's raw, deeply-nested JSON. Official US government data, no API key, no anti-bot.


Why use this instead of openFDA directly

openFDA is powerful but raw: verbose records, nested openfda objects, YYYYMMDD date strings, and three separate endpoints. This actor does the cleanup for you:

  • One clean flat row per recall — drops straight into a spreadsheet or BI tool.
  • Explainable 0-100 risk_score — not just a class letter. Every score ships with a score_breakdown (severity, recency, distribution scale, status, harm signals) and a plain-English score_rationale, so you can sort by real risk and see why. No other recall scraper shows its work.
  • Recall lifecycleis_open, days_open, and time_to_classification_days tell you what's still active and how fast the FDA moved.
  • Plain-English severity — Class I/II/III mapped to High/Medium/Low + a severity_rank for sorting.
  • Brand / generic / manufacturer / NDC / UPC lifted out of the nested openfda block.
  • ISO dates (YYYY-MM-DD) instead of YYYYMMDD.
  • Drug + device + food merged into one deduped dataset; sort by date or risk score.
  • Filters for product type, severity, status, state, keyword, date range, open-only, and minimum risk score.
  • Re-run on a schedule to monitor new recalls for a firm, brand, or category.

How to use it

  1. Pick product types (drugs / devices / food).
  2. Optionally filter: severity (Class I = most serious), status (Ongoing / Completed / Terminated), state, a search term (firm, product, or contaminant), and a date range.
  3. Run → get a clean, deduped, newest-first recall table.

Input

FieldTypeDescription
productTypesarraydrug, device, food (any combination).
searchTermstringFree text across firm, product, and reason.
classificationarrayClass I / Class II / Class III severity filter.
statusstringOngoing / Completed / Terminated.
statestringRecalling-firm US state code (e.g. CA).
dateFrom / dateTostringRecall-initiation date range (YYYY-MM-DD).
openOnlybooleanKeep only open / not-yet-terminated recalls (active risk).
minScoreintegerKeep only recalls with risk_score ≥ this (0-100).
sortBystringdate (newest first) or risk (highest score first).
maxItemsintegerMax recalls (split across types). Default 200.
apiKeystringOptional free openFDA key for large runs.

Example input:

{
"productTypes": ["drug", "device"],
"classification": ["Class I"],
"status": "Ongoing",
"dateFrom": "2025-01-01",
"maxItems": 500
}

JSON output sample

{
"recall_number": "D-1234-2025",
"product_type": "drug",
"classification": "Class I",
"severity": "High",
"severity_rank": 1,
"risk_score": 88,
"score_breakdown": { "severity": 40, "recency": 20, "status": 15, "distribution": 15, "harm": 10 },
"score_rationale": "Class I (most serious — reasonable probability of serious harm/death); recall still ongoing (active risk); initiated 41 days ago; wide/nationwide distribution; harm signals: contaminat",
"status": "Ongoing",
"is_open": true,
"days_open": 41,
"time_to_classification_days": 15,
"recalling_firm": "Acme Pharmaceuticals, Inc.",
"brand_name": "ACME XR 20MG",
"generic_name": "amphetamine mixed salts",
"manufacturer": "Acme Pharmaceuticals USA, Inc.",
"product_ndc": "12345-678-90",
"upc": null,
"product_description": "ACME XR 20 mg extended-release capsules, 100-count bottle",
"reason_for_recall": "Failed dissolution specifications; possible contamination",
"distribution_pattern": "Nationwide (US)",
"initiation_date": "2025-03-18",
"report_date": "2025-04-02",
"termination_date": null,
"firm_city": "Trenton",
"firm_state": "NJ",
"country": "United States",
"event_id": "90123"
}

Results render as a clean, sortable table on the Output tab and export to CSV, JSON, or Excel.

Example output

A real sample from a live run:

recall_numberproduct_typeclassificationrecalling_firmstatusrisk_score
F-1671-2024foodClass IPalmer & CompanyTerminated70
F-1170-2024foodClass IHandNaturalOngoing58
F-1354-2023foodClass IICassanos IncTerminated40
F-1472-2022foodClass IIQueen Bee Gardens, LLCTerminated52

Use cases

  • Recall monitoring — schedule the actor to watch for new Class I recalls in your category or for a specific firm/brand.
  • Competitive & supplier risk — track recalls hitting competitors or your suppliers/contract manufacturers.
  • Regulatory & quality intelligence — feed a compliance dashboard with structured enforcement data.
  • Investment signals — biotech/medtech catalyst tracking (a Class I recall moves markets).
  • Journalism & research — query decades of recalls by firm, product, or reason.

Use with AI agents & automation

Run from the Apify MCP server so AI agents (Claude, ChatGPT, Cursor) can query recalls as a tool call, schedule runs via Make, n8n, or Zapier to alert Slack/email on new Class I recalls, or sync the dataset to Google Sheets for a live recall dashboard. Clean flat JSON drops into compliance pipelines with no glue code.


Pricing

Pay-per-event — you're charged per recall record delivered. Source data is the free public openFDA API, so there are no proxy or third-party costs. See the Apify Store page for the current per-result price.


FAQ

Where does the data come from? The official openFDA API (api.fda.gov), maintained by the U.S. Food & Drug Administration — public government data.

Do I need an API key? No. It works key-free. Add a free openFDA key only for very large/high-frequency runs (higher rate limit).

What do the classifications mean? Class I = reasonable probability of serious harm or death; Class II = temporary/medically reversible harm; Class III = unlikely to cause harm. This actor maps them to High/Medium/Low.

How far back does it go? openFDA enforcement data spans well over a decade; use the date filters to scope it.

Can I monitor new recalls? Yes — schedule the actor with a dateFrom of the last few days (or a firm/brand searchTerm) and pipe results to Slack/email via Make/Zapier.

Can I export to CSV or Google Sheets? Yes — CSV, JSON, or Excel from the Output tab, or sync to Google Sheets via Make, n8n, or Zapier.


Other Flash Scrape scrapers