Pricing
from $0.01 / 1,000 recall record saveds
FDA Food Recalls Scraper
๐ฅซ Monitor and export FDA/OpenFDA food recall records by product, firm, risk class, status, geography, and dates.
Pricing
from $0.01 / 1,000 recall record saveds
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Export FDA/OpenFDA food recall and enforcement records for compliance monitoring, supplier risk checks, and food safety reporting.
The actor uses the official OpenFDA food enforcement API, not fragile FDA HTML pages. It returns normalized recall records with classification, status, recalling firm, product description, reason, distribution pattern, dates, geography, code information, and source links.
What does FDA Food Recalls Scraper do?
FDA Food Recalls Scraper collects food recall and enforcement records from the public OpenFDA food enforcement endpoint.
Use it to:
- ๐ฅซ Monitor new FDA food recalls by report date
- ๐งพ Export recall evidence for compliance files
- ๐ญ Track recalls for a specific recalling firm
- โ ๏ธ Filter Class I and Class II recalls for risk workflows
- ๐ Watch recalls by state or country
- ๐ Search product descriptions and recall reasons by keyword
- ๐ Feed recall data into BI dashboards, data warehouses, or alerts
Who is it for?
This actor is built for teams that need repeatable recall monitoring instead of manual FDA searches.
Typical users include:
- Food manufacturers watching related products and ingredients
- Importers and distributors checking supplier risk
- Grocers and restaurant groups monitoring products in their supply chain
- Compliance consultants preparing recall reports
- Food safety teams tracking Class I and Class II events
- Data teams building automated recall dashboards
- Legal and insurance teams collecting recall evidence
Why use this actor?
Manual recall monitoring is easy to miss and hard to export consistently. This actor gives you a scheduled, API-friendly workflow with structured outputs.
Benefits:
- โ Official OpenFDA source
- โ No login required
- โ Scheduled monitoring on Apify
- โ Clean dataset exports
- โ Stable field names for integrations
- โ Source API URL on every row
- โ FDA iRES record URL when an event ID is available
Data source
The actor queries:
https://api.fda.gov/food/enforcement.json
OpenFDA food enforcement data includes recall and enforcement report records published by the FDA. Availability and updates depend on the FDA/OpenFDA source.
Input overview
You can run a broad recall feed or narrow the feed with structured filters.
Main filters:
productKeywordssearches product descriptions and recall reasonsrecallingFirmfilters by recalling firm nameclassificationsfilters risk class valuesstatusesfilters recall status valuesstatesandcountriesfilter recalling-firm geographyreportDateFromandreportDateTofilter FDA report datesinitiationDateFromandinitiationDateTofilter recall initiation datesqueryaccepts an advanced raw OpenFDA search expressionmaxItemslimits the number of records saved
Example input
{"productKeywords":["allergen"],"classifications":["Class I","Class II"],"statuses":["Ongoing"],"reportDateFrom":"2024-01-01","maxItems":100,"sortBy":"report_date","sortDirection":"desc"}
Advanced query input
Use query if you already know OpenFDA search syntax.
Example:
{"query":"classification:\"Class I\" AND status:\"Ongoing\"","maxItems":250}
Structured fields are easier for most users. Advanced query is there for teams that need exact OpenFDA expressions.
Output data
Each dataset item is one FDA food recall/enforcement record.
| Field | Description |
|---|---|
recallNumber | FDA recall number |
eventId | FDA event ID |
classification | FDA recall classification |
status | Recall status |
productType | Product type |
recallingFirm | Firm responsible for the recall |
productDescription | Product description |
reasonForRecall | FDA reason for recall |
distributionPattern | Distribution details |
recallInitiationDate | Recall initiation date |
reportDate | FDA report date |
centerClassificationDate | FDA center classification date |
terminationDate | Termination date when available |
voluntaryMandated | Voluntary or mandated recall indicator |
initialFirmNotification | Initial firm notification method |
productQuantity | Product quantity |
codeInfo | Code information |
moreCodeInfo | Additional code information |
city | Firm city |
state | Firm state |
country | Firm country |
postalCode | Firm postal code |
address | Combined address |
sourceApiUrl | Exact OpenFDA API URL used for the page |
sourceRecordUrl | FDA iRES event link when possible |
scrapedAt | Actor extraction timestamp |
Example output
{"recallNumber":"F-1234-2026","eventId":"98765","classification":"Class I","status":"Ongoing","recallingFirm":"Example Foods Inc.","productDescription":"Example product description","reasonForRecall":"Undeclared allergen","reportDate":"2026-06-10","state":"CA","country":"United States","sourceRecordUrl":"https://www.accessdata.fda.gov/scripts/ires/?Event=98765","scrapedAt":"2026-06-21T00:00:00.000Z"}
How much does it cost to scrape FDA food recalls?
This actor uses pay-per-event pricing.
- A small start event is charged once per run.
- A result event is charged for each recall record saved.
- You control spend with
maxItemsand filters.
Use a small maxItems value for the first test run. Increase it for scheduled monitoring or historical exports.
How to run
- Open the actor on Apify.
- Choose product keywords, date range, and recall classifications.
- Set
maxItemsto the number of records you need. - Run the actor.
- Export results as JSON, CSV, Excel, XML, or RSS.
Monitoring workflow
For recall monitoring, schedule the actor daily or weekly.
Recommended monitoring setup:
- Set
reportDateFromto a recent date - Filter
statusestoOngoing - Filter
classificationstoClass IandClass II - Use a moderate
maxItems, such as 100 or 500 - Connect the dataset to a webhook, Slack alert, data warehouse, or dashboard
Supplier risk workflow
For supplier checks, use recallingFirm with date filters.
Example use cases:
- Check a supplier before onboarding
- Monitor a high-risk vendor
- Review recent recalls during audits
- Export firm-specific recall history for compliance files
Product keyword workflow
Use productKeywords for ingredients, product categories, contaminants, or allergens.
Examples:
peanut buttermilksalmonellalisteriaundeclared allergenforeign material
Tips for better results
- Use exact FDA terms when possible.
- Start broad, then narrow with classification and date filters.
- Use
reportDateFromfor recurring monitoring. - Use
recallInitiationDateFromfor operational recall timelines. - Use the advanced
queryfield only if you know OpenFDA syntax. - Keep
maxItemslow during testing.
Integrations
You can integrate this actor with:
- Google Sheets for recall watchlists
- Airtable for compliance tracking
- Snowflake or BigQuery for analytics
- Slack or email alerts through Apify webhooks
- CRM or supplier-risk platforms
- Internal food safety dashboards
- MCP-compatible AI workflows
API usage with Node.js
import{ ApifyClient }from'apify-client';const client =newApifyClient({token: process.env.APIFY_TOKEN});const run =await client.actor('automation-lab/fda-food-recalls-scraper').call({productKeywords:['allergen'],classifications:['Class I','Class II'],statuses:['Ongoing'],reportDateFrom:'2024-01-01',maxItems:100,});const{ items }=await client.dataset(run.defaultDatasetId).listItems();console.log(items);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('automation-lab/fda-food-recalls-scraper').call(run_input={'productKeywords':['allergen'],'classifications':['Class I','Class II'],'statuses':['Ongoing'],'reportDateFrom':'2024-01-01','maxItems':100,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
API usage with cURL
curl-X POST "https://api.apify.com/v2/acts/automation-lab~fda-food-recalls-scraper/runs?token=$APIFY_TOKEN"\-H'Content-Type: application/json'\-d'{"productKeywords":["allergen"],"classifications":["Class I","Class II"],"statuses":["Ongoing"],"reportDateFrom":"2024-01-01","maxItems":100}'
MCP usage
Use this actor from MCP-enabled tools through Apify MCP.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/fda-food-recalls-scraper
Add it to Claude Code:
$claude mcp add apify-fda-food-recalls https://mcp.apify.com/?tools=automation-lab/fda-food-recalls-scraper
Example MCP server configuration:
{"mcpServers":{"apify-fda-food-recalls":{"url":"https://mcp.apify.com/?tools=automation-lab/fda-food-recalls-scraper"}}}
Example prompts:
- "Find the latest ongoing Class I food recalls involving allergens."
- "Export FDA food recall records for this supplier since 2024."
- "Summarize recent FDA food recalls by state and classification."
Legality and responsible use
This actor uses publicly available OpenFDA data. You are responsible for how you use the exported records and for complying with your organization's regulatory, legal, and data-retention requirements.
OpenFDA data can change over time. Always verify high-impact compliance decisions against the original FDA record.
FAQ
Why did I get zero results?
Your filters may be too narrow. Try removing recallingFirm, widening the date range, or using fewer keywords.
Why does the actor use the OpenFDA API instead of FDA web pages?
The official API is more stable, structured, and automation-friendly. FDA HTML pages may be protected or change without notice.
Why are some fields empty?
OpenFDA records do not always contain every field. The actor keeps optional fields as null when the source does not provide them.
Related scrapers
Related Apify actors from Automation Lab may include public-data, compliance, and regulator monitoring actors as the portfolio grows:
- https://apify.com/automation-lab/company-domain-finder
- https://apify.com/automation-lab/accessibility-checker
- https://apify.com/automation-lab/website-contact-finder
Changelog
0.1โ Initial FDA/OpenFDA food recalls actor with structured filters and normalized recall output.
Support
If you need a new filter, field, or integration pattern, open an issue through the Apify actor page.
Summary
FDA Food Recalls Scraper turns public OpenFDA food enforcement data into a repeatable monitoring and export workflow for food safety, compliance, and supply-chain risk teams.
