openFDA Food Recall & Enforcement Scraper (USA)
Scrape FDA food recall and enforcement actions from the official openFDA API. Extract recall number, hazard class, product description, reason, recalling firm, city, state and dates across the United States. Export to JSON, CSV or Excel.
{ "recallNumber": "H-1138-2026", "status": "Ongoing", "classification": "Class I", "productType": "Food", "productDescription": "Smoked Sausage Spice 32.86#", "reasonForRecall": "Undeclared Sesame allergen", "recallingFirm": "Adams Extract & Spice LLC", "city": "Gonzales", "state": "TX" }
各実行で、型が揃ったきれいなレコードを返します。CRM・スプレッドシート・データベースにそのまま使えます。
- 結果ごとに 1 レコード、重複排除・正規化済み
- JSON・CSV・Excel の安定したスキーマ、または Apify API で読み取り
- クラウドで従量課金。インストールも保守も不要
実際の 1 レコード例。受け取る形そのままです。
| Recall Number | Status | Classification | Product Type |
|---|---|---|---|
| H-1138-2026 | Ongoing | Class I | Food |
| H-1143-2026 | Ongoing | Class II | Food |
| H-1140-2026 | Ongoing | Class I | Food |
| H-1146-2026 | Ongoing | Class II | Food |
| H-1144-2026 | Ongoing | Class I | Food |
{ "recallNumber": "H-1138-2026", "status": "Ongoing", "classification": "Class I", "productType": "Food", "productDescription": "Smoked Sausage Spice 32.86#", "reasonForRecall": "Undeclared Sesame allergen", "recallingFirm": "Adams Extract & Spice LLC", "city": "Gonzales", "state": "TX" }
よくある質問
What data does this scraper cover?
It covers the openFDA food enforcement database for the United States, which holds food recall and enforcement actions including the product, reason, classification, recalling firm, distribution and status.
How many records can I pull in one run?
openFDA paginates with a skip offset up to 25000 records per query. For larger pulls, narrow the filters or the date range so each run stays under that ceiling.
How do I find serious recalls only?
Set Classification to Class I, which marks recalls with a reasonable probability of serious health consequences or death. You can combine it with a keyword such as listeria or salmonella and a state filter.
How does the search work?
A simple keyword is matched to the recall reason, for example listeria, salmonella or undeclared allergen. You can also paste a raw openFDA expression with a field, such as product_description:cheese or recalling_firm:Tyson.
What happens to missing fields?
Fields that openFDA does not provide for a record, such as a termination date on an ongoing recall, are returned as null. The scraper never invents values.