CPSC · NHTSA portfolio
Official CPSC, NHTSA, and openFDA enforcement rows for product watchlists
CPSC Recall Portfolio Watch — NHTSA Vehicle Safety Alerts reads the official CPSC Recalls API, NHTSA recalls/complaints, and keyless openFDA enforcement only (no adverse-event endpoints). Baseline, backfill, or current-window. Evidence for review, not a safety rating. Schema default dryRun is true and maxChargeUsd is 0. It is not the CPSC marketplace watch with alert/digest/report PPE — that job is CPSC Product Recall Marketplace Watch — and it is not NHTSA-only digest scraping (NHTSA Recall Scraper).
Try Input: 1 CPSC battery watchlist, emit_backfill, reports off, maxChangedRecords 1, maxChargeUsd 1, dryRun false. Live Store: from $6.00 / 1,000 safety record rows ($0.006) + $0.20 market-action-alert + $8 report + $5 export. No Actor Start.
Open taroyamada/product-safety-market-action-portfolio-report on the Apify Store
Multi-agency safety portfolio, not a CPSC-only marketplace watch or NHTSA-only digest
Use this page when the job is a bounded product watchlist across CPSC, NHTSA, and FDA enforcement. Use CPSC Product Recall Marketplace Watch for CPSC alert/digest/report PPE. Use NHTSA Recall & Complaint Watch for make/model campaign watches. Use Product Safety Recall Scraper for FDA/CPSC recall digests that are not this portfolio card.
| CPSC Recall Portfolio Watch — NHTSA Vehicle Safety Alerts | CPSC Product Recall Marketplace Watch | NHTSA Recall Scraper | |
|---|---|---|---|
| Intent | CPSC + NHTSA + openFDA enforcement portfolio | CPSC marketplace watch with alert/digest/report events | NHTSA vehicle recall digest |
| Primary input | watchlists[] with agency CPSC/NHTSA/FDA |
feeds on that Actor |
NHTSA digest inputs |
| What it reads | Official CPSC Recalls API, NHTSA recalls/complaints, openFDA enforcement only | Official CPSC sources | NHTSA recalls |
| Primary output | safety-record-row (Store primary), market-action-alert, optional report/export | cpsc-recall-alert / digest / report | NHTSA recall rows |
| Not this job | Not a safety rating. Not adverse-event endpoints. | Not NHTSA/FDA enforcement in one portfolio. | Not CPSC consumer-product recalls. |
Store ID: taroyamada/product-safety-market-action-portfolio-report. Categories on the live Store card: Business. Fetch only sources you are authorized to use. Respect source terms, robots.txt, and rate limits.
Use cases
- Start with the published low-cost trial: one CPSC battery productNames watch, 30-day lookback, maxChangedRecords 1, reports off.
- Add NHTSA or FDA watchlists after the CPSC path writes useful rows. Live item properties include agency, productTypes, productNames, keywords, brands, classifications, statuses, lookbackDays, maxResults.
- Keep
initialRunModebaseline_onlywhen you only need to seed state (free).
The live Store tagline is: CPSC recall portfolio watch plus NHTSA vehicle safety alerts; paste product list and Start. README also describes name, make, model, modelYear, recordTypes, includeComplaints — those keys are not in the live input schema items.properties.
How is CPSC Recall Portfolio Watch different from CPSC Product Recall Marketplace Watch and NHTSA Recall Scraper?
CPSC Recall Portfolio Watch — NHTSA Vehicle Safety Alerts (taroyamada/product-safety-market-action-portfolio-report) reads official CPSC, NHTSA, and openFDA enforcement for watchlists you supply. Live PPE is safety-record-row $0.006 (Store primary), market-action-alert $0.20, product-safety-portfolio-report $8, and product-safety-export $5. No Actor Start. CPSC Product Recall Marketplace Watch is a CPSC-only alert/digest/report Actor. NHTSA Recall Scraper and NHTSA Recall & Complaint Watch are NHTSA-focused. Product Safety Recall Scraper is FDA/CPSC digest scraping. Use this Actor for a multi-agency portfolio. Use the CPSC marketplace watch for CPSC-only PPE. Use NHTSA Actors for vehicles only. Not a safety rating.
What input is required?
Live required fields: watchlists, monitorKey, initialRunMode, generateReport, emitRawRows, emitUnchanged, maxChargeUsd, dryRun. watchlists[] live properties: id, agency (CPSC, NHTSA, FDA), productTypes (FDA: drug, device, or food; max 3), productNames (max 20), keywords (max 20), brands (max 20), classifications (max 5), statuses (max 5), lookbackDays (min 1, max 3650), maxResults (min 1, max 100). Array minItems 1, maxItems 100. Default watchlist is battery CPSC 30d. Optional: emitExport, maxChangedRecords (default 1, min 1, max 1000), requestTimeoutSeconds, rateLimitMs, maxRetries, backoffBaseMs, maxBackoffMs, delivery (dataset or webhook), webhookUrl. Schema default dryRun true and maxChargeUsd 0.
| Field | Type | Default | Notes |
|---|---|---|---|
watchlists |
array | battery CPSC 30d prefill | minItems 1, maxItems 100. Required. Item agency enum CPSC, NHTSA, FDA. |
monitorKey |
string | starter-battery-recalls |
maxLength 120. Required. |
initialRunMode |
string | emit_backfill |
Enum: baseline_only, emit_current_window, emit_backfill. Required. |
generateReport |
boolean | false |
Portfolio report ($8). Required. |
emitRawRows |
boolean | true |
safety-record-row events. Required. |
emitUnchanged |
boolean | false |
Required. |
emitExport |
boolean | false |
Export row ($5). |
maxChangedRecords |
integer | 1 |
Cap changed records. min 1, max 1000. |
maxChargeUsd |
number | 0 |
Plan must fit before push. min 0, max 5000. Required. Paid try needs > 0. |
dryRun |
boolean | true |
No network/state/charges. Required. |
delivery |
string | dataset |
Enum: dataset, webhook. |
webhookUrl |
string | — | HTTPS handoff. |
requestTimeoutSeconds |
integer | 30 |
Same timeout family as other monitors. |
rateLimitMs |
integer | 250 |
|
maxRetries |
integer | 2 |
|
backoffBaseMs |
integer | 250 |
|
maxBackoffMs |
integer | 4000 |
Cheapest first paid input (README low-cost trial):
{
"watchlists": [
{
"id": "battery-recalls",
"agency": "CPSC",
"productNames": [
"battery"
],
"lookbackDays": 30
}
],
"monitorKey": "starter-battery-recalls",
"initialRunMode": "emit_backfill",
"generateReport": false,
"emitRawRows": true,
"emitUnchanged": false,
"emitExport": false,
"maxChangedRecords": 1,
"maxChargeUsd": 1,
"dryRun": false
}
README: safety-record-row $0.006 + market-action-alert $0.20 when matches exist.
Run this starter watchlist on Apify
What is the cheapest first paid Try Input?
Live README low-cost trial: one CPSC battery watchlist, emit_backfill, generateReport false, emitRawRows true, emitExport false, maxChangedRecords 1, maxChargeUsd 1, dryRun false. README: safety-record-row $0.006 plus market-action-alert $0.20 when matches exist. Free if baseline_only or unchanged. Set maxChargeUsd to 1 because default 0 blocks paid push.
What does a result contain?
README rowType values include product_safety_portfolio_report, safety_record, market_action_alert, and product_safety_export. Every billable row includes stableKey, idempotencyKey, official source URLs, limitations, and prohibitedInterpretations. FDA rows may include fdaProductType, classification, and status. Also deliveryAudit. dataset_schema path only — not served on Store. Treat README samples as illustrations, not a live coverage guarantee.
How is CPSC Recall Portfolio Watch priced?
Billing is pay-per-event. The live Store card is from $6.00 / 1,000 safety record rows. Live events are safety-record-row $0.006 (Store API primary), market-action-alert $0.20, product-safety-portfolio-report $8, and product-safety-export $5, each charged when that row is delivered. No Actor Start. README USD amounts match. actor.json marks market-action-alert primary; prefer the Store card which marks safety-record-row primary. Store description: safety record row row (duplicated word).
| Event | Price | Emitted when |
|---|---|---|
safety-record-row (Safety record row) |
$0.006 | PAID when that row is delivered. Store API primary. |
market-action-alert (Market action alert) |
$0.20 | PAID when that row is delivered. |
product-safety-portfolio-report (Product safety portfolio report) |
$8 | PAID when that row is delivered. |
product-safety-export (Product safety export) |
$5 | PAID when that row is delivered. |
README USD amounts match. Prefer Store primary safety-record-row. This page quotes live PPE only. Not a safety rating.
from $6.00 / 1,000 safety record rows. No Actor Start.
See CPSC Recall Portfolio Watch pricing on Apify
How do dataset, webhook, and dry-run delivery work?
delivery defaults to dataset and also accepts webhook. dryRun defaults to true (no network/state/charges). Unchanged-with-a-change only when emitUnchanged is false. Dataset output is the billable surface when rows are written.
Limits to keep in mind
- Evidence for review, not a safety rating or legal conclusion.
- openFDA enforcement only — no adverse-event endpoints.
- README keys
name,make,model,modelYear,recordTypes,includeComplaintsare not live schema properties. - Schema default
dryRuntrue andmaxChargeUsd0 block a paid push until you change them. - Official CPSC, NHTSA, and openFDA sources only.
Open CPSC Recall Portfolio Watch — NHTSA Vehicle Safety Alerts on Apify
Related pages
- CPSC Product Recall Marketplace Watch — CPSC-only alert/digest/report PPE.
- NHTSA Recall Scraper — NHTSA digest, not this portfolio card.
- NHTSA Recall & Complaint Watch — Make/model campaign watches.
- Product Safety Recall Scraper — FDA/CPSC digest, not this portfolio card.
- FDA Warning Letters Scraper — Warning letters, not recall portfolios.
- UK FSA Food Safety Alert Portfolio Report — UK FSA alerts, not CPSC/NHTSA.
- Tools