Recall Exposure Matcher – Check Your Catalog Against CPSC & FDA avatar

Recall Exposure Matcher – Check Your Catalog Against CPSC & FDA

Pricing

from $0.20 / 1,000 results

Go to Apify Store
Recall Exposure Matcher – Check Your Catalog Against CPSC & FDA

Recall Exposure Matcher – Check Your Catalog Against CPSC & FDA

Automate recall exposure monitoring for your product catalog. Cross-references your SKUs, UPCs, and brand names against CPSC and openFDA (food, drug, device) databases using exact and fuzzy matching. Outputs row-by-row safety compliance reports to flag affected inventory instantly.

Pricing

from $0.20 / 1,000 results

Rating

0.0

(0)

Developer

Parviz Abbasov

Parviz Abbasov

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Every "recall monitor" on the market hands you a firehose of every recall published this week and expects you to figure out if any of it affects you. This one flips that around: give it your own product catalog, and it tells you — product by product — whether you're exposed.

Built for e-commerce sellers, marketplace merchants, distributors, and retail compliance teams who need a direct answer to "do I need to pull anything from my shelves or listings?", not another feed to manually cross-reference.

How it works

  1. You give the Actor your product catalog: SKU, name, brand, and (ideally) UPC.
  2. The Actor pulls recent recalls from the official CPSC (SaferProducts.gov) and openFDA (food/drug/device) databases.
  3. Each of your products is checked against every fetched recall:
    • High confidence — your product's UPC exactly matches a UPC on a CPSC recall.
    • Medium confidence — your product's brand matches a recalling company and a real word from your product name appears in that recall's product description. Both conditions have to hold — brand overlap alone, or name overlap alone, isn't enough. This keeps false alarms down.
    • No match — nothing found in either source within your lookback window.
  4. You get one output row per your product, not per recall — a direct answer, with links back to the official source for any hit.

Input

FieldTypeDefaultDescription
productsarray3 example productssku, name, brand, upc (optional but recommended).
sourcesarrayall fourWhich of CPSC / FDA-Food / FDA-Drug / FDA-Device to check.
lookbackDaysinteger730How far back to search. A recall from 3 years ago is still relevant if the product is still in your inventory — raise this for a full audit.
maxRecallsPerSourceinteger2000Safety cap on records fetched per source.

Output

{
"sku": "DEMO-001",
"productName": "Portable Space Heater 1500W",
"brand": "Example Home Co",
"upc": "012345678905",
"matchFound": true,
"confidence": "high",
"matchedRecalls": [
{
"source": "cpsc",
"recallNumber": "24-001",
"title": "Recall of XYZ Space Heaters",
"date": "2024-01-10",
"reason": "Fire hazard",
"url": "https://www.saferproducts.gov/..."
}
],
"checkedAt": "2026-09-11T10:00:00.000Z"
}

Every product you submit gets a row, including the ones with matchFound: false — a documented "checked, clear" record is itself useful for a compliance audit trail.

Why UPC matters

Providing a UPC lets the Actor do an exact match against CPSC's recall data — the strongest possible signal. Without a UPC, matching falls back to brand + keyword text matching, which is clearly labeled as medium confidence and should be manually verified before you act on it. FDA food/drug/device recalls generally don't publish UPCs at all, so FDA matches are always text-based regardless of whether you supply a UPC.

Pricing

Pay-per-event:

  • A small flat fee per run.
  • Per product where a recall match is found — the outcome you're actually looking for.
  • Per product checked and confirmed clear — priced lower, since it's still real work done, just a different (lower-urgency) outcome.

Limitations

  • Covers CPSC (general consumer products) and openFDA (food, drug, device). It does not cover NHTSA (vehicle) recalls in this version.
  • medium confidence matches are text-based and can occasionally be wrong — verify against the source link before acting on anything without a UPC-based high confidence match.
  • CPSC's raw API response has some inconsistency in exactly how UPCs are nested per record; this Actor handles the common variants defensively, but if you notice a UPC that should have matched and didn't, please report it.
  • FDA recall records are matched on brand/description text only — lot numbers and NDC codes are not checked in this version.

API usage example

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("YOUR_USERNAME/recall-exposure-matcher").call(run_input={
"products": [
{"sku": "SKU-100", "name": "Kids Bike Helmet", "brand": "Acme Sports", "upc": "012345678905"},
],
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
status = "MATCH FOUND" if item["matchFound"] else "clear"
print(item["sku"], "-", status)