FDA Recalls Database Scraper
Pricing
from $3.00 / 1,000 results
FDA Recalls Database Scraper
Scrape FDA recalls from the openFDA REST API. Search food, drug, device, biologics, cosmetics, and veterinary recalls by keyword, product type, firm name, or classification. No API key required.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Scrape FDA product recall data from the openFDA REST API — completely free with no API key required. Search across food, drug, medical device, biologics, cosmetics, and veterinary recalls with powerful filters.
What data can you scrape?
- All FDA recall categories: Food & Beverages, Drugs & Pharmaceuticals, Medical Devices, Biologics, Cosmetics, Veterinary Products
- Full recall details: recall number, classification, reason, firm, product description, distribution pattern, code info, dates, and location
- Historical data: search recalls going back decades
- Up-to-date: openFDA data is updated weekly
Input Parameters
| Parameter | Type | Description |
|---|---|---|
mode | Select | Search mode: searchByKeyword, searchByProductType, searchByFirm, byClassification |
keyword | Text | Search term for keyword search |
productType | Select | food, drug, device, biologics, cosmetics, veterinary |
firmName | Text | Recalling company/firm name |
classification | Select | Class I, Class II, Class III |
dateFrom | Text | Start date filter (YYYY-MM-DD) |
dateTo | Text | End date filter (YYYY-MM-DD) |
maxItems | Integer | Maximum records to return (default: 50, max: 5000) |
Search Modes
- searchByKeyword — Full-text search across all recall fields. Best for general queries like
"salmonella","listeria", or"peanut butter". - searchByProductType — Browse all recalls for a specific FDA product category.
- searchByFirm — Find all recalls by a specific company (e.g.,
"Tyson Foods"). - byClassification — Filter by recall severity: Class I (most serious health risk), Class II, or Class III.
Output Fields
| Field | Description |
|---|---|
recall_number | Unique recall identifier |
status | Ongoing / Terminated / Completed |
classification | Class I / Class II / Class III |
product_type | FDA product category |
recalling_firm | Company issuing the recall |
product_description | Product name and description |
reason_for_recall | Why the product was recalled |
distribution_pattern | Geographic scope of distribution |
report_date | Date recall was reported |
recall_initiation_date | Date recall was initiated |
voluntary_mandated | Whether recall was voluntary or FDA-mandated |
city, state, country | Firm location |
code_info | Lot numbers, expiration dates, UPC codes |
Example Use Cases
- Food safety monitoring — Track all food recalls for a specific allergen or pathogen
- Pharmaceutical compliance — Monitor drug recalls by classification severity
- Company due diligence — Check recall history for a specific manufacturer
- Market research — Analyze recall trends by product category and date range
- Supply chain risk — Identify recently recalled products in your supply chain
Sample Input
{"mode": "searchByKeyword","keyword": "peanut","productType": "food","maxItems": 50}
FAQs
Q: Do I need an API key? A: No. The openFDA API is free and requires no registration for standard usage (up to 1000 requests/day without a key, much more with one).
Q: How fresh is the data? A: openFDA enforcement data is updated weekly by the FDA.
Q: Can I get all recalls ever?
A: Yes — use searchByProductType without any keyword to browse all recalls for a category. The API covers recalls going back decades.
Q: What is the difference between recall classes? A: Class I = most serious (reasonable probability of serious health consequence), Class II = may cause adverse health consequences, Class III = not likely to cause health problems.
Q: Why are some fields missing from output? A: Only non-empty fields are included. If an FDA record lacks a value (e.g., no termination date for an ongoing recall), that field is omitted.