Reference · built on requestCommons signalHazards & public safety

CPSC Recalls API

Consumer product recalls with products, hazards, remedies, and retailers from the SaferProducts.gov Recall Retrieval Web Services.

About

The U.S. Consumer Product Safety Commission keeps its recall database in Recall Central and exposes it through the Recall Retrieval Web Services, REST services co-located with saferproducts.gov. The root URI is https://www.saferproducts.gov/RestWebServices/Recall. Every query parameter is a case-insensitive wildcard search on a field such as RecallTitle, ProductName, Hazard, Remedy, Retailer, or UPC, or a date window set with RecallDateStart and RecallDateEnd. Results return as XML by default or as JSON with format=json. A query for the early years returns recall dates from June 1973 onward.

On Fibric, an operator matches new recalls to the products you sell or stock and proposes a lot quarantine, a listing pause, or a support reply for your approval, with the RecallNumber and remedy attached.

This is a reference listing. It documents what Fibric would read from CPSC Recalls API and what it could propose, based on the publisher's published interfaces. Fibric builds it under a managed deployment when you request it; selecting it here installs nothing.

Inputs

  • Recall records: RecallID, RecallNumber, RecallDate, Title, Description, URL, ConsumerContact, and LastPublishDate
  • Products collection: Name, Description, Model, Type, CategoryID, and NumberOfUnits for each product in the recall
  • Hazards with Name, HazardType, and HazardTypeID; Remedies with Name; RemedyOptions with Option; and Injuries with Name
  • Manufacturers, Retailers, Importers, and Distributors, each with Name and CompanyID, plus ManufacturerCountries and ProductUPCs
  • Date windows with RecallDateStart, RecallDateEnd, LastPublishDateStart, and LastPublishDateEnd in the query string
  • Inconjunctions and Images, each carrying a URL, and a SoldAtLabel field present on live records
  • A flat variant at /RestWebServices/RecallDelimited that folds each collection into pipe-separated, quote-delimited strings

Proposed actions

Read-only. This feed informs operators; it changes nothing.

Proposed actions are target capabilities. Every action runs propose-first and needs a validated deployment and the appropriate permissions.

What you can build

  • Quarantine stock that matches a new recall

    Poll Recall with RecallDateStart set to your last run and match Products.Name and ProductUPCs to your catalog. On a hit, the operator proposes a quarantine and cites the RecallNumber.

    With Lot Quarantine

  • Hold a listing and its open returns

    When a recalled product is one you sell, the operator proposes a pause on the listing and routes open returns of that item under the RemedyOptions value, such as Repair or Refund.

    With Returns Triage

  • Answer recall questions with the remedy text

    Match inbound tickets that name a recalled product. The operator proposes a reply built from ConsumerContact and Remedies.Name so agents send the manufacturer's instructions.

    With Macro Match

Requirements

  • Your product names, models, or UPCs in a form that matches the wildcard search on ProductName, ProductModel, or UPC
  • A date window on RecallDateStart and RecallDateEnd for polling, since the guide documents no page or limit parameter
  • An XML parser, or format=json on every request
Authentication
None. The programmer's guide says the services are co-located with the saferproducts.gov public website so retrieval is available to the general public.

Limits

  • Searches are wildcard substring matches; the guide notes that Fairchild matches child and non-metallic matches metal
  • The guide, version 1.3 of October 31, 2017, lists no rate limit, no pagination, and no sort parameter
  • HazardType and HazardTypeID were empty on a live 2026 record; the hazard is carried in the Name text
  • Retailer names arrive as prose that can include sale dates and prices, not as structured company records

Access and pricing

Reference listing. Public feed access is separate from Fibric integration. If you request this feed, your quote covers the build, usage, and support.

Request CPSC Recalls API ↗

Questions and answers

How do I ask for JSON?
Append format=json to the query string. The guide gives https://www.saferproducts.gov/RestWebServices/Recall?format=json&RecallTitle=Child&RecallDescription=metal as an example. Without the parameter the service returns XML.
Which fields can I search?
The guide lists RecallID, RecallNumber, RecallDateStart, RecallDateEnd, LastPublishDateStart, LastPublishDateEnd, RecallURL, RecallTitle, ConsumerContact, RecallDescription, ProductName, ProductDescription, ProductModel, ProductType, InconjunctionURL, ImageURL, Injury, Manufacturer, Retailer, Importer, Distributor, ManufacturerCountry, UPC, Hazard, Remedy, and RemedyOption. Every search is case insensitive and wildcard.
How far back does the data go?
The CPSC page does not state a start date. A query with RecallDateStart=1960-01-01 and RecallDateEnd=1975-12-31 returned records whose earliest RecallDate is in June 1973.
Ask about CPSC Recalls API

Ask about the capabilities and requirements in this listing.

For project-specific requirements, contact Fibric.