FDA Data Scraper
Pricing
from $3.50 / 1,000 results
FDA Data Scraper
Scrape FDA drug, device and food data from the official openFDA API β no login, no API key, no blocking. Drug recalls, adverse events (20M+), drug labels, device recalls and 510(k) clearances. Filter by firm, classification and date. Tens of thousands of records per run.
Pricing
from $3.50 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Share
π FDA Data Scraper β Drug & Device Recalls, Adverse Events & Labels via openFDA API
Scrape FDA drug, device and food data straight from the official openFDA API β drug recalls, drug adverse events (20M+ records), drug labels, device recalls, device adverse events (24M+ records), 510(k) clearances and food recalls. This FDA data scraper needs no login and no API key, and one run can return tens of thousands of structured records ready to export to JSON, CSV or Excel.
Because it reads the official openFDA API, results are reliable and don't break with website redesigns. Use openFDA's powerful search syntax to filter by recalling firm, classification, date range and more, and schedule the Actor to keep an always-current FDA enforcement and safety feed.
β¨ What this Actor does / Key features
- Official openFDA API β 100% reliable, never blocked, no fragile HTML parsing.
- No API key, no login β just configure and run.
- Nine FDA datasets β drug recalls, drug adverse events, drug labels, device recalls, device adverse events, device 510(k) clearances, food recalls, food adverse events and animal & veterinary adverse events.
- Massive scale β 20M+ drug adverse events, 24M+ device adverse events; tens of thousands of records per run.
- Powerful filtering β use openFDA search syntax to filter by
recalling_firm,classification,report_dateranges and any other field. - Adjustable run size β set
maxRecordsto cap the run or0to pull everything available for the query. - Structured, export-ready output β flat JSON records, perfect for JSON, CSV, Excel, databases or BI tools.
- Built for scheduling β recalls and adverse events update constantly; run on a schedule for a fresh feed.
π Input
| Field | Type | Description |
|---|---|---|
dataset | string (enum) | Which openFDA dataset to scrape: drug/enforcement (drug recalls), drug/event (drug adverse events, 20M+), drug/label (drug labels), device/recall, device/event (device adverse events, 24M+), device/510k (510(k) clearances), food/enforcement (food recalls), food/event (food adverse events), animalandveterinary/event. Default drug/enforcement. |
searchQuery | string | Optional openFDA search filter, e.g. classification:"Class I", recalling_firm:pfizer, or report_date:[20260101+TO+20261231]. Leave empty for all records. |
maxRecords | integer | Maximum records to save. 0 = all available for the query (up to ~26,000 per query β narrow with searchQuery for more). Minimum 0. |
π Example input
{"dataset": "drug/enforcement","searchQuery": "classification:\"Class I\"","maxRecords": 10000}
Pull all device recalls for a specific firm:
{"dataset": "device/recall","searchQuery": "recalling_firm:medtronic","maxRecords": 0}
π¦ Output
Each item in the dataset is one FDA record. Output is flat, structured JSON. The fields below are the common enforcement/recall fields surfaced across datasets; the exact fields available depend on the chosen dataset.
| Field | Description |
|---|---|
_dataset | The openFDA dataset this record came from (e.g. drug/enforcement). |
recalling_firm | Name of the firm that initiated the recall. |
product_description | Description of the recalled or reported product. |
reason_for_recall | Stated reason for the recall. |
classification | FDA recall classification (Class I, II or III). |
status | Recall status (e.g. Ongoing, Completed, Terminated). |
city | City of the recalling firm. |
state | State of the recalling firm. |
country | Country of the recalling firm. |
recall_number | FDA's unique recall identifier. |
report_date | Date the recall was reported. |
recall_initiation_date | Date the recall was initiated. |
product_type | Product type (Drugs, Devices, Food, etc.). |
scrapedAt | ISO timestamp of when the record was scraped. |
Example output record
{"_dataset": "drug/enforcement","recalling_firm": "Example Pharma Inc.","product_description": "Example Drug 10mg Tablets","reason_for_recall": "Failed dissolution specifications","classification": "Class I","status": "Ongoing","city": "Trenton","state": "NJ","country": "United States","recall_number": "D-1234-2026","report_date": "20260115","recall_initiation_date": "20260108","product_type": "Drugs","scrapedAt": "2026-05-15T08:30:00.000Z"}
π‘ Use cases
- Product-liability & drug-injury law firms β monitor recalls and adverse events at scale to identify cases.
- Pharma & medical-device safety teams β track competitor recalls and adverse-event reports.
- Compliance & regulatory teams β maintain an always-current FDA enforcement feed for your product categories.
- Health-tech companies & researchers β build research datasets from FDA's open data.
- Insurers & risk analysts β quantify recall frequency and severity by firm, product type and classification.
- Journalists & watchdogs β surface Class I recalls and safety trends as they're reported.
β Frequently Asked Questions
Do I need an FDA or openFDA API key? No. The Actor uses the public openFDA API, which is accessible without an API key, account or login.
Is it legal to scrape FDA data? Yes β openFDA is the FDA's official open-data API, intended for public programmatic access. You are responsible for how you use and present the data.
Which datasets can I scrape? Nine: drug recalls, drug adverse events (20M+), drug labels, device recalls, device adverse events (24M+), device 510(k) clearances, food recalls, food adverse events, and animal & veterinary adverse events.
How much data can I get in one run?
Tens of thousands of records. openFDA caps a single query at roughly 26,000 records β to extract more, split your work with narrower searchQuery filters (e.g. by date range or firm) across multiple runs.
How do I filter the results?
Use the searchQuery field with openFDA's search syntax. Examples: classification:"Class I", recalling_firm:pfizer, report_date:[20260101+TO+20261231]. Leave it empty to pull everything.
How fast is it and does it get blocked? It's fast and reliable β because it uses the official API there are no captchas or anti-bot blocks. Cost depends only on the Apify compute used.
Can I schedule it and what formats are supported? Yes. Schedule it on Apify to keep recalls and adverse events continuously up to date. Results export to JSON, CSV, Excel or XML, or via the Apify API.
β° Scheduling & integration
Schedule this Actor on Apify to run daily for an always-fresh FDA recalls and adverse-events feed. Export results to JSON, CSV or Excel, pull them through the Apify API, or connect the dataset to Google Sheets, webhooks or your compliance and analytics pipelines.