Openfda Food Enforcement
Pricing
from $1.00 / 1,000 results
Openfda Food Enforcement
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
rx d
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Security
Limited permissionsShare
openFDA Food Enforcement / Recall Aggregator
Fetch and filter FDA food recall enforcement reports from the public openFDA Food Enforcement API into a clean Apify dataset.
This Actor calls https://api.fda.gov/food/enforcement.json only. It does not scrape websites, bypass rate limits, or access private data.
Features
- Keyword search across product description, recall reason, and recalling firm
- Filters: classification (Class I / II / III), status, firm, state, country
- Date range on report / initiation / classification / termination dates
- Automatic pagination (up to 5,000 records; openFDA page size 1,000)
- Flat, analysis-ready dataset rows + run summary in key-value store
- Optional openFDA API key for higher rate limits (~240 req/min vs ~40)
Input
| Field | Type | Description |
|---|---|---|
keyword | string | Free-text keyword (OR across key fields) |
search | string | Raw Lucene query (AND-combined with filters) |
classification | string | Class I, Class II, or Class III |
status | string | Ongoing, Terminated, Completed |
recallingFirm | string | Company name phrase |
state / country | string | Firm location filters |
dateField | string | Which date field the range uses |
dateFrom / dateTo | string | YYYYMMDD inclusive bounds |
limit | integer | Max records (1–5000, default 100) |
skip | integer | Offset (max 25000) |
sort | string | e.g. report_date:desc |
apiKey | string (secret) | Optional openFDA API key |
includeRawOpenfda | boolean | Keep nested openfda object |
Example input
{"keyword": "allergen","classification": "Class I","dateFrom": "20240101","dateTo": "20261231","limit": 100,"sort": "report_date:desc"}
Output
Each dataset item is one recall / enforcement report, including:
recall_number, event_id, status, classification, product_description, reason_for_recall, recalling_firm, city, state, country, distribution_pattern, product_quantity, report_date, recall_initiation_date, voluntary_mandated, code_info, fetched_at, source, source_url.
A summary is stored as key-value record OUTPUT_SUMMARY.
The Actor Output schema (required by Apify Store publishing) lives in .actor/output_schema.json and is linked from .actor/actor.json as "output". Dataset field layout remains in .actor/dataset_schema.json. After changing these files, rebuild the Actor so Publishing can detect the schema.
Use cases
- Food-safety monitoring dashboards
- Allergen / pathogen recall alerts for retailers and brands
- Compliance research and competitive intelligence
- Downstream enrichment for AI / RAG pipelines
Compliance & attribution
- Data source: openFDA (U.S. Food and Drug Administration)
- Terms of service · License
- Do not rely on openFDA alone for medical or regulatory decisions. Results may be incomplete or delayed.
- This Actor respects public API limits and retries politely on HTTP 429/5xx.
Pricing (suggested)
Recommended monetization: Pay-per-event (PPE) — rental is sunset for new Actors.
Suggested events:
| Event | Suggested FREE-tier price | Notes |
|---|---|---|
apify-actor-start | $0.00005 (platform default) | Covers first seconds of compute |
apify-default-dataset-item | $0.0008 – $0.0015 per result | ~$0.80–$1.50 per 1,000 recalls |
Offer ~10% off Silver and ~20% off Gold vs FREE. Start near $0.001 / result; adjust after real usage.
Changelog
1.0.1
- Wire Apify Output schema (
.actor/output_schema.json) so Store publishing can detect run output
1.0.0
- Initial release: openFDA food enforcement query, filters, pagination, structured dataset