CPSC Product Recalls Scraper: Hazards & Remedies avatar

CPSC Product Recalls Scraper: Hazards & Remedies

Pricing

from $6.15 / 1,000 results

Go to Apify Store
CPSC Product Recalls Scraper: Hazards & Remedies

CPSC Product Recalls Scraper: Hazards & Remedies

Scrape US CPSC consumer product recalls from SaferProducts.gov. Extract recall number, date, products, hazards, injuries, manufacturers, importers, retailers, country of manufacture and remedy. Export to JSON, CSV or Excel.

Pricing

from $6.15 / 1,000 results

Rating

5.0

(1)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

CPSC Product Recalls Scraper: Hazards & Remedies

CPSC Product Recalls Scraper: Hazards & Remedies

Here is one real result, with every field the actor returns:

{
"imageUrl": "https://www.cpsc.gov/s3fs-public/voomf-1.jpg",
"title": "Play Yard and Crib Mattresses Recalled Due to Risk of Serious Injury or Death from Entrapment and Fire Hazards; Violate Mandatory Standards for Mattresses; Sold on Amazon by Voomf",
"recallNumber": "26669",
"url": "https://www.cpsc.gov/Recalls/2026/Play-Yard-and-Crib-Mattresses-Recalled-Due-to-Risk-of-Serious-Injury-or-Death-from-Entrapment-and-Fire-Hazards-Violate-Mandatory-Standards-for-Mattresses-Sold-on-Amazon-by-Voomf",
"recallId": 10904,
"recallDate": "2026-08-06",
"lastPublishDate": "2026-08-07",
"description": "This recall involves Voomf-branded play yard mattresses and crib mattresses. The tri-fold aftermarket play yard mattresses are white with a neutral-colored letter or balloon print and measure about 38 inches by 26 inches by 3 inches. \"Product Model: BYL001\" is printed on a label inside the mattress cover. The full-sized crib mattresses are white with an aquamarine band and a zipper along the sides, and measure about 25 inches by 27 inches by 5.5 inches. \"voomf\" is printed on a label on the side of the mattress.",
"consumerContact": "Voomf by email at voomfrecall@outlook.com.",
"products": [
{
"name": "Voomf Play Yard and Crib Mattresses",
"description": null,
"model": null,
"type": null,
"units": "About 2,401"
}
],
"upcs": [],
"manufacturers": [],
"importers": [
"Shanghaiyuejiuyaoguojimaoyiyouxiangongsi (Shanghai Yuejiuyao International Trade Co., Ltd.), dba Voomf, of China"
],
"retailers": [
"Online at Amazon.com from January 2026 through May 2026 for between $40 and $87."
],
"distributors": [],
"manufacturerCountries": ["China"],
"hazards": [
"The recalled mattresses violate the mandatory safety standard for crib mattresses because the mattresses may not adequately fit certain play yards, posing a deadly entrapment hazard. Babies can suffocate in gaps between an undersized mattress, or extra padding, and side walls of a product, especially when the infant's face becomes trapped against the side and the mattress, preventing the infant from breathing. Furthermore, the full-sized crib mattresses violate the mandatory flammability standard for mattress sets, posing a risk of serious injury or death from fire."
],
"injuries": [
"CPSC has received one report of inadequate mattress fit. No injuries have been reported."
],
"remedies": [
"Consumers should stop using the mattresses immediately and contact Voomf for a full refund. Consumers will be asked to destroy the mattresses by writing in permanent marker \"Recalled,\" cutting the play yard mattress in half and cutting the full-sized mattress cover diagonally across the entire mattress using scissors, and to send a photo of the destroyed mattress to voomfrecall@outlook.com. Consumers should then dispose of the recalled product in accordance with local and/or state disposal procedures."
],
"remedyOptions": ["Refund"],
"images": [
"https://www.cpsc.gov/s3fs-public/voomf-1.jpg",
"https://www.cpsc.gov/s3fs-public/voomf-2.jpg",
"https://www.cpsc.gov/s3fs-public/voomf-3.gif",
"https://www.cpsc.gov/s3fs-public/voomf-4.jpg"
],
"aiSummary": "Voomf-branded play yard and crib mattresses are recalled due to a risk of entrapment and fire hazards, as they do not meet safety standards. Consumers should stop using the mattresses immediately, contact Voomf for a full refund, and destroy the mattresses as instructed.",
"aiSeverity": "high",
"aiRiskScore": 85,
"aiRiskRationale": "The mattresses pose serious entrapment and fire hazards, which can lead to severe injury or death, despite no injuries reported yet.",
"aiExtract": {
"hazardType": "Entrapment and fire hazards",
"affectedProducts": ["Voomf-branded play yard mattresses", "Voomf-branded crib mattresses"],
"injuryCount": 0,
"incidentCount": 1,
"remedy": "Consumers should stop using the mattresses immediately and contact Voomf for a full refund.",
"ageRange": null,
"soldAt": ["Amazon"]
},
"observedAt": "2026-08-14T05:52:10.368Z",
"error": null
}

The most complete CPSC product recall scraper available. It returns every field the CPSC recall database exposes for each recall, including hazards, injuries, remedies, manufacturers, importers and product UPCs, plus optional AI add-ons for summaries, severity scoring and structured extraction, and gives you four filters to target exactly the recalls you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor calls the official CPSC recall web service, applies the filters you pass as input, and writes one normalized record per recall to the run's dataset. Dates are normalized to YYYY-MM-DD, missing source values are returned as null, and nested source structures (products, hazards, injuries, remedies, manufacturers, importers, retailers, distributors, UPCs and images) are flattened into clean arrays so you can sort and filter without extra parsing.

Three optional AI add-ons are available on paid Apify plans and off by default: a plain-language aiSummary, an aiSeverity risk classification, and a structured aiExtract. Each is billed only when it produces output.

Data covers US Consumer Product Safety Commission recalls only. It does not include food, drug or vehicle recalls (see the openFDA Food Recall Scraper for food).

Quickstart

Open the actor, paste this into the input, and press Run. It returns 2 recent recalls whose title contains "fire", each enriched with all three AI add-ons.

{
"recallTitle": "fire",
"maxRecalls": 2,
"withSummary": true,
"withSeverity": true,
"withExtract": true
}

Every input field is optional. With an empty input the actor returns the most recent recalls (default maxRecalls is 10) without any AI add-ons.

Input reference

FieldTypeRequiredDefaultDescription
maxRecallsintegerno10Maximum records to collect. The CPSC web service returns all matching recalls in one response, so narrow with date or keyword filters for large pulls.
recallDateStartstringno(empty)Include recalls with a recall date on or after this date (YYYY-MM-DD), for example 2026-01-01.
recallDateEndstringno(empty)Include recalls with a recall date on or before this date (YYYY-MM-DD), for example 2026-06-30.
recallTitlestringno(empty)Keyword matched against the recall title, for example fire, lithium, helmet, or a brand name.
productNamestringno(empty)Keyword matched against the recalled product name, for example vaporizer, stroller, heater.
withSummarybooleannofalsePaid AI add-on. Adds a plain-language aiSummary of each recall. Billed only when produced. Requires a paid Apify plan.
withSeveritybooleannofalsePaid AI add-on. Adds an aiSeverity class (low/medium/high/critical), a 0 to 100 aiRiskScore and a rationale. Billed only when produced. Requires a paid Apify plan.
withExtractbooleannofalsePaid AI add-on. Adds a structured aiExtract: hazard type, affected products, injury/incident counts, remedy, age range and retailers. Billed only when produced. Requires a paid Apify plan.

Filters combine with logical AND. If you pass no filters, the actor returns the most recent recalls.

Output reference

One dataset item per recall. Types: string, integer, boolean, object[], string[], object, or null when the source value is absent.

FieldTypeDescription
imageUrlstringURL of the primary recall image, or null.
titlestringFull CPSC recall title.
recallNumberstringCPSC recall number.
urlstringCanonical CPSC recall page URL.
recallIdintegerInternal CPSC recall ID.
recallDatestringDate the recall was announced (YYYY-MM-DD).
lastPublishDatestringDate the recall record was last published (YYYY-MM-DD).
descriptionstringNarrative description of the recalled product.
consumerContactstringHow consumers should contact the firm.
productsobject[]Recalled products, each with name, description, model, type, units.
upcsstring[]Product UPC codes. Empty array when none listed.
manufacturersstring[]Manufacturer names.
importersstring[]Importer names.
retailersstring[]Retailer names and where/when sold.
distributorsstring[]Distributor names.
manufacturerCountriesstring[]Countries where the product was made.
hazardsstring[]Hazard descriptions.
injuriesstring[]Reported injuries or incidents.
remediesstring[]Remedy instructions for consumers.
remedyOptionsstring[]Remedy option labels, for example Refund, Replace, Repair.
imagesstring[]All recall image URLs.
aiSummarystringAI plain-language summary. null unless the withSummary add-on ran.
aiSeveritystringAI severity class: low, medium, high, critical. null unless withSeverity ran.
aiRiskScoreintegerAI risk score 0 to 100. null unless withSeverity ran.
aiRiskRationalestringOne-sentence rationale for the risk score. null unless withSeverity ran.
aiExtractobjectAI structured extract (hazard type, affected products, injury/incident counts, remedy, age range, retailers). null unless withExtract ran.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"recallTitle": "fire", "maxRecalls": 2, "withSummary": true, "withSeverity": true, "withExtract": true}):

{
"imageUrl": "https://www.cpsc.gov/s3fs-public/voomf-1.jpg",
"title": "Play Yard and Crib Mattresses Recalled Due to Risk of Serious Injury or Death from Entrapment and Fire Hazards; Violate Mandatory Standards for Mattresses; Sold on Amazon by Voomf",
"recallNumber": "26669",
"url": "https://www.cpsc.gov/Recalls/2026/Play-Yard-and-Crib-Mattresses-Recalled-Due-to-Risk-of-Serious-Injury-or-Death-from-Entrapment-and-Fire-Hazards-Violate-Mandatory-Standards-for-Mattresses-Sold-on-Amazon-by-Voomf",
"recallId": 10904,
"recallDate": "2026-08-06",
"lastPublishDate": "2026-08-07",
"description": "This recall involves Voomf-branded play yard mattresses and crib mattresses.",
"consumerContact": "Voomf by email at voomfrecall@outlook.com.",
"products": [
{ "name": "Voomf Play Yard and Crib Mattresses", "description": null, "model": null, "type": null, "units": "About 2,401" }
],
"upcs": [],
"manufacturers": [],
"importers": ["Shanghaiyuejiuyaoguojimaoyiyouxiangongsi (Shanghai Yuejiuyao International Trade Co., Ltd.), dba Voomf, of China"],
"retailers": ["Online at Amazon.com from January 2026 through May 2026 for between $40 and $87."],
"distributors": [],
"manufacturerCountries": ["China"],
"hazards": ["The recalled mattresses violate the mandatory safety standard for crib mattresses... posing a deadly entrapment hazard."],
"injuries": ["CPSC has received one report of inadequate mattress fit. No injuries have been reported."],
"remedies": ["Consumers should stop using the mattresses immediately and contact Voomf for a full refund."],
"remedyOptions": ["Refund"],
"images": ["https://www.cpsc.gov/s3fs-public/voomf-1.jpg", "https://www.cpsc.gov/s3fs-public/voomf-2.jpg"],
"aiSummary": "Voomf-branded play yard and crib mattresses are recalled due to a risk of entrapment and fire hazards.",
"aiSeverity": "high",
"aiRiskScore": 85,
"aiRiskRationale": "The mattresses pose serious entrapment and fire hazards, which can lead to severe injury or death.",
"aiExtract": {
"hazardType": "Entrapment and fire hazards",
"affectedProducts": ["Voomf-branded play yard mattresses", "Voomf-branded crib mattresses"],
"injuryCount": 0,
"incidentCount": 1,
"remedy": "Contact Voomf for a full refund.",
"ageRange": null,
"soldAt": ["Amazon"]
},
"observedAt": "2026-08-14T05:52:10.368Z",
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~cpsc-recalls-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"recallTitle":"fire","maxRecalls":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~cpsc-recalls-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"productName":"stroller","recallDateStart":"2026-01-01","maxRecalls":100}'

Apify CLI:

apify call scrapers_lat/cpsc-recalls-scraper \
--input '{"recallTitle":"lithium","maxRecalls":10}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per recall record returned (result event). See the pricing tab for the current per-result price.
  • Optional AI add-ons are billed as separate events only when they produce output: ai_summary, ai_severity and ai_extract. They are off by default and require a paid Apify plan.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results and add-ons.
  • Free Apify plans are capped at 10 records per run and cannot use the AI add-ons. Upgrade for higher maxRecalls.

FAQ and troubleshooting

A run returned 0 records. Why? The filter combination matched nothing in the source. Loosen filters (for example remove productName or widen the date range). Zero-result runs are not charged.

Why are the ai* fields null? The AI add-ons are off by default. Enable withSummary, withSeverity or withExtract on a paid Apify plan. Free plans cannot use them.

What is the difference between recallTitle and productName? recallTitle matches the recall announcement title, while productName matches the specific recalled product name. Combine both to narrow further.

Why is a value null or an array empty? The CPSC record did not include that value. Missing source values are returned as null or [], never invented.

Is this an official CPSC tool? No. This actor is independent and has no affiliation with the CPSC. It reads only data that is publicly available through the CPSC recall web service. Use it in accordance with the CPSC terms of service.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with the CPSC. Accesses only publicly available CPSC recall data. Use in accordance with the CPSC terms of service.