
Product Recalls Safety Aggregator
Pricing
Pay per event

Product Recalls Safety Aggregator
A professional Apify Actor that aggregates and normalizes product recalls & safety notices from government sources across EU, US, and UK. Perfect for compliance teams, retailers, manufacturers, and consumer safety organizations.
0.0 (0)
Pricing
Pay per event
0
2
2
Last modified
a day ago
Product Recalls & Safety Notices Aggregator
A professional Apify Actor that aggregates and normalizes product recalls & safety notices from government sources across EU, US, and UK. Perfect for compliance teams, retailers, manufacturers, and consumer safety organizations.
Features
- Multi-source aggregation: Fetches from 7 official government APIs and portals
- Intelligent deduplication: Detects cross-source duplicates using fingerprinting
- Portfolio tracking: Monitor specific brands, GTINs, models, or SKUs
- Real-time webhooks: Get instant alerts for new recalls
- Normalized data model: Consistent structure across all sources
- Incremental updates: Efficient polling with state management
Data Sources
United States
- CPSC: Consumer Product Safety Commission (non-food products)
- FDA: Food & Drug Administration (medical devices, drugs, food)
European Union
- Safety Gate (RAPEX): EU rapid alert system for dangerous products (27+ countries)
United Kingdom
- OPSS: Office for Product Safety & Standards (non-food products)
- FSA: Food Standards Agency (food and allergen alerts)
Input Configuration
Source Selection
Toggle which sources to fetch from (all enabled by default).
Filtering Options
- Categories: Filter by product category (toys, electronics, food, etc.)
- Hazards: Filter by hazard type (fire, choking, allergen, etc.)
- Regions: Filter by affected countries (ISO codes)
- Date range: Fetch recalls since specific date
Portfolio Tracking
Monitor specific products:
- Brand names
- GTIN/EAN/UPC codes
- Model numbers
- SKUs
Webhooks
Configure real-time notifications:
{"url": "https://your-endpoint.com/webhook","headers": { "Authorization": "Bearer token" },"secret": "shared-secret","mode": "per_item"}
Output Schema
Each recall notice follows a comprehensive, normalized schema with over 20 structured fields:
Core Fields
- notice_uid: Unique identifier (e.g.,
"US_CPSC:12345"
) - source: Data source (
"US_CPSC"
,"US_FDA_DEVICE"
, etc.) - title: Recall notice title
- summary: Brief description of the recall
- source_url: Official government URL
Product Information
"product": {"name": "Product Name","brand": "Brand Name","category": "toys|food|electronics|medical_devices|...","identifiers": {"gtin_ean_upc": ["barcode numbers"],"model_numbers": ["model codes"],"batch_lot_codes": ["batch/lot numbers"],"serial_numbers": ["serial numbers"]}}
Risk Assessment
- hazards: Normalized array (
["choking", "fire", "chemical", ...]
) - risk_level: Standardized levels (
"serious"
,"high"
,"medium"
,"low"
) - regulatory_classification: Official classification (FDA Class I/II/III, etc.)
Geographic & Temporal Data
- affected_regions: ISO 3166-1 alpha-2 country codes
- dates: Publication, recall initiation, and update timestamps
- jurisdiction: Legal jurisdiction
Enhanced Metadata
- cross_source_duplicates: Links to same recalls from other sources
- ingest_meta: First/last seen timestamps and processing version
- raw: Complete original data from source API
Dataset Views
The schema includes 4 pre-configured views for easy data visualization:
- Overview: Key fields for general monitoring
- High Risk: Filtered to serious/high risk notices only
- By Source: Grouped by government agency
- Recent: Latest notices with temporal sorting
API Configuration
openFDA API Key (Recommended)
For enhanced rate limits and reliability on US FDA endpoints:
- Get a free API key: Register at open.fda.gov
- Set as environment variable:
OPENFDA_API_KEY
in Actor settings - Or pass as input: Use
openfda_api_key
parameter (less secure)
Benefits: Higher rate limits, better performance, production-grade reliability.
Normalization
Categories
All product categories are normalized to a standard set:
- toys, electronics, appliances, motor_vehicles, childcare, cosmetics, furniture, ppe, kitchenware, sports, jewelry, clothing, chemical_products, food, meat_poultry_egg, drugs, medical_devices, other
Hazard Types
Standardized hazard classifications:
- chemical, injury, fire, electric_shock, choking, microbiological, allergen, cuts, entrapment, strangulation, asphyxiation, burns, environment, security
Risk Levels
- serious: Reasonable probability of serious consequences or death
- high: May cause temporary or reversible health consequences
- medium: Unlikely to cause serious consequences
- low: Minimal risk
- unclassified: Risk level not specified
Regions
All regions use ISO 3166-1 alpha-2 country codes (US, GB, DE, etc.)
Scheduling
Recommended polling intervals:
- FDA/openFDA: 2-4 times daily (weekly updates)
- CPSC, FSA, OPSS: Hourly
- EU Safety Gate: Daily or every 6 hours
Configure via Apify Schedules with cron expressions.
State Management
The actor maintains state between runs:
- Tracks seen notices to avoid duplicates
- Stores per-source cursors for efficient polling
- Identifies cross-source duplicates
- Automatically cleans up entries older than 90 days
Webhook Payload
Example webhook payload:
{"notice_uid": "EU_SAFETY_GATE:A12/01579/24","source": "EU_SAFETY_GATE","title": "Children's toy โ choking hazard","product": {"name": "Toy Set","brand": "BrandCo","category": "toys"},"hazards": ["choking"],"risk_level": "high","actions": ["recall_from_end_users"],"affected_regions": ["DE", "FR", "ES"],"source_url": "https://..."}
Use Cases
- Retailers: Monitor recalls for products in inventory
- Manufacturers: Track recalls in your product categories
- Compliance teams: Ensure regulatory compliance
- Consumer organizations: Alert members about safety issues
- Insurance companies: Risk assessment and claims validation
- E-commerce platforms: Automated product removal
Pricing
Pay-Per-Event (PPR) Model
- $0.001 per recall processed (new notices only, excludes duplicates)
- Free: Duplicate detection and state management
- Examples:
- 100 new recalls = $0.10
- 1,000 new recalls = $1.00
- 10,000 new recalls = $10.00
Value Proposition
- Only pay for newly discovered recalls
- No charge for duplicates or empty runs
- Efficient incremental updates save costs
- Portfolio filtering reduces noise and charges
Enterprise Options
- Portfolio bundles: Monitor specific brands/products
- Webhook premium: Priority delivery with SLA
- Private instances: Dedicated infrastructure
- Custom integrations: API access and bulk exports
Technical Features
Performance Optimizations
- Circuit breakers: Prevent cascading failures across data sources
- Health checks: Pre-flight validation before processing
- Intelligent windowing: Automatic date range optimization for large datasets
- Rate limiting: Built-in delays and retry logic for API stability
Data Quality
- Deduplication: Cross-source fingerprinting detects identical recalls
- Normalization: Consistent categorization and hazard classification
- Validation: Schema compliance and data integrity checks
- Incremental updates: State management prevents duplicate processing
Monitoring & Observability
- Detailed logging: Real-time progress and error reporting
- Performance metrics: Processing times and success rates
- Health indicators: API status and circuit breaker states
Support & Development
Community & Support
- Email: kontakt@barrierefix.de
- GitHub: barrierefix/product-recalls-aggregator
- Issues: Report bugs and feature requests via GitHub Issues
Enterprise Services
- Custom implementations: Tailored recall monitoring solutions
- Priority support: SLA-backed assistance and consultation
- Integration services: API integration and webhook setup
- Training & onboarding: Team training for safety compliance workflows
Legal Notice
This actor aggregates publicly available government data. All recall information is sourced from official government agencies. Users are responsible for appropriate use of this data in their jurisdiction.
Quick Start
- Configure Input: Set date range and enable desired sources
- Optional: Add openFDA API key for better performance
- Run Actor: Execute via Apify Console or API
- Access Data: Download results or consume via API/webhooks
{"date_since": "2024-01-01","max_items_per_run": 1000,"enable_us_cpsc": true,"enable_us_fda_device": true,"enable_us_fda_food": true,"enable_us_fda_drug": true,"enable_uk_fsa": true,"enable_uk_opss": true,"enable_eu_safety_gate": true}
Limitations & Notes
- FDA API: 25,000 result limit per query (automatically windowed)
- EU Safety Gate: HTML scraping may be slower than API sources
- Update frequency: Depends on source publication schedules
- Rate limits: Built-in handling with exponential backoff
- Data freshness: Most sources update within 24 hours
Version History
- v1.0.0: Initial release with 7 data sources
- All US FDA APIs optimized with circuit breakers
- Cross-source deduplication and normalization
- Comprehensive dataset schema with 4 visualization views