Try any of 817 endpoints — live.
Pick an endpoint, load a working example, tweak the params, and send — no signup to try. Results render the way the data deserves; raw JSON, headers & code are one tab away.
Search FDA recalls by keyword, category, classification, status, company, and date range with skip/limit pagination. Pass category=all (default) to span food+drug+device.
Free-text product/keyword search over the recall's product description and reason (openFDA Lucene). e.g. 'peanut butter', 'listeria', 'airbag'. Combine with category/classification/date.
FDA recall category. food / drug / device, or 'all' to search every category at once. (CPSC consumer-product & NHTSA vehicle recalls are out of scope — see docs; vehicle recalls live in the `vehicle` API.)
FDA hazard classification. Case-insensitive. Filters to recalls of that seriousness tier.
Recall lifecycle status. Case-insensitive; unknown values are ignored rather than rejected.
Optional recalling-firm filter to narrow a search.
Filter by recall report_date from (on or after). ISO YYYY-MM-DD (or YYYYMMDD). Pair date_from + date_to for a range.
Filter by recall report_date to (on or before). ISO YYYY-MM-DD (or YYYYMMDD). Pair date_from + date_to for a range.
Result ordering by date field.
Results per page (1-100, default 20). Larger values are clamped. (1–100)
Pagination offset (skip N results). Page forward with meta.next_skip. openFDA ceiling: skip+limit <= 25000. (0–25000)
Include the 0-100 severity_score on each recall (default true).
curl -X POST https://api.reefapi.com/recall/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"query":"listeria","category":"food","limit":"3"}'Hit Send to run this endpoint live.