Safety Gate Scraper — EU Product Recalls & Safety Alerts avatar

Safety Gate Scraper — EU Product Recalls & Safety Alerts

Pricing

from $20.00 / 1,000 alert extracteds

Go to Apify Store
Safety Gate Scraper — EU Product Recalls & Safety Alerts

Safety Gate Scraper — EU Product Recalls & Safety Alerts

Extract product recalls and safety alerts from the EU Safety Gate (RAPEX) system — toys, electronics, cosmetics, vehicles and more. Filter by product category, notifying country, risk type and date. Official EU open data via the portal's public JSON API, no login or proxies.

Pricing

from $20.00 / 1,000 alert extracteds

Rating

0.0

(0)

Developer

Oaida Adrian

Oaida Adrian

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Pull official EU Safety Gate (RAPEX) product recall and safety alerts as clean structured JSON. The Safety Gate is the European Commission's rapid alert system for dangerous non-food consumer products — toys, electronics, cosmetics, vehicles, childcare articles, clothing and more. Every alert published by national authorities of the EU/EEA lands here.

The data comes straight from the portal's public JSON API — no login, no API key, no proxies, no browser. This is official EU open data, refreshed live at run time.

What you get

  • 🔎 Every alert field — reference number (e.g. A12/00123/26), publication date, product name and category, brands, model types, barcodes, risk types, risk description, legal provisions, measures taken, country of origin, online sellers
  • 🗺️ Notifying country — which EU/EEA authority reported the alert
  • 🛒 E-commerce angleisSoldOnline flag and the online marketplaces/traders where the product was sold
  • 🖼️ Product photos — direct URL to the main image from the official record
  • 📅 Date-filtered — pull alerts published since a specific date (e.g. a weekly compliance sweep)

Input

{
"category": "Electrical appliances and equipment",
"country": "DE",
"dateFrom": "2026-07-01",
"extractDetails": true
}
FieldTypeDefaultDescription
categorystringemptyProduct category — name or API code, e.g. Electrical appliances and equipment, ELECTRICAL_APPLIANCES, Toys, Cosmetics. Empty = all categories.
countrystringemptyNotifying country — ISO code or name, e.g. DE, Germany, FR. Empty = all countries.
dateFromstringemptyOnly alerts published on/after this date (YYYY-MM-DD).
dateTostringemptyOnly alerts published on/before this date (YYYY-MM-DD).
riskTypestringemptyFilter by risk, e.g. ELECTRIC_SHOCK, FIRE, CHEMICAL, CHOKING, INJURIES.
maxResultsinteger0Maximum alerts to extract. 0 = unlimited (all matches).
extractDetailsbooleantrueFetch the full detail record per alert (risk description, measures, origin, sellers). When false, returns the faster search-card fields only.
languagestringenLanguage for descriptions and product names (en, de, fr, ro, ...).

Output

One dataset item per alert:

{
"id": 10118484,
"reference": "SR/02255/26",
"alertUrl": "https://ec.europa.eu/safety-gate-alerts/screen/webReport/alertDetail/10118484",
"publicationDate": "2026-08-11T12:14:17.333+00:00",
"notifyingCountryCode": "DE",
"notifyingCountry": "Germany",
"productCategory": "ELECTRICAL_APPLIANCES",
"productName": "Electric grinder",
"productNameSpecific": "Elektrische Gewürz- und Kaffeemühle, Electric Grinder",
"brands": ["Yearninglife"],
"modelTypes": ["8300"],
"barcodes": ["6851451218421"],
"riskTypes": ["CUTS", "ELECTRIC_SHOCK"],
"riskDescription": "The appliance can be used with the lid open, allowing direct contact with the grinding blade...",
"legalProvision": "The product does not comply with the requirements of the Low Voltage Directive...",
"measures": ["PRODUCT_WITHDRAWAL_FROM_MARKET"],
"countryOriginCode": "CN",
"countryOrigin": "People's Republic of China",
"isSoldOnline": true,
"onlineTraders": ["eBay"],
"webReportCode": "Report-2026-32",
"mainImageUrl": "https://ec.europa.eu/safety-gate-alerts/public/api/notification/image/11228256",
"scrapedAt": "2026-08-13T10:00:00+00:00"
}

Fields not published for an alert come back as null/empty — every record keeps the same shape, so CSV/Excel exports stay clean.

Use cases

  • Compliance monitoring — watch a product category you sell or import; get alerted when a product is flagged
  • Marketplace seller risk — check onlineTraders to see which platforms a recalled product was sold on
  • Product safety research — analyse recall trends by category, country and risk type
  • Quarterly EU safety reports — pull all recalls in a category and measure reporting trends
  • Import/KYC vetting — screen a supplier's catalogue against the official EU recall database

Run it on a schedule or from your code

Create a Schedule in Apify Console to run a weekly category sweep, or call the Actor from anywhere:

curl -X POST "https://api.apify.com/v2/acts/darknezz~safety-gate-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"category": "Toys", "dateFrom": "2026-08-01"}'

The call returns the alerts directly as JSON. Every run's dataset can also be exported as CSV, Excel, XML or RSS from Apify Console.

From Python with the official SDK:

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("darknezz/safety-gate-scraper").call(
run_input={"category": "Electrical appliances and equipment",
"country": "DE", "dateFrom": "2026-07-01"})
for alert in client.dataset(run["defaultDatasetId"]).iterate_items():
print(alert["reference"], alert["productName"], alert["riskTypes"])

Worked example (verified live)

Running the Actor with {"category": "Electrical appliances and equipment", "country": "DE", "dateFrom": "2026-07-01", "maxResults": 20} returns 18 alerts notified by German authorities since July — each with reference, publication date, product name and brand, risk types, measures and the official alertUrl. The first row is the electric grinder shown in the sample above (SR/02255/26, id 10118484, published 24 Aug 2026): flagged for CUTS and ELECTRIC_SHOCK, sold online via eBay, with the official detail URL attached for verification.

Pricing

Pay per event: $0.02 per alert extracted (primary charge event result) plus a one-time $0.01 actor-start fee and Apify's standard dataset-item event. The 18-alert run above billed about $0.37 in event fees; a weekly single-category compliance sweep typically stays under a dollar.

FAQ

Where does the data come from? The official EU Safety Gate portal (ec.europa.eu/safety-gate-alerts) — the European Commission's public JSON API. The same source the portal's own website uses. No scraping of HTML pages, no fragile selectors.

How fresh is it? Alerts are pulled live at run time. The Commission publishes new alerts weekly (every Friday) plus immediate publications for serious risks.

What categories exist? Toys, electrical appliances and equipment, cosmetics, clothing/textiles, childcare articles, motor vehicles, chemicals, furniture, machinery, personal protective equipment, and more — the full list is in the category dropdown.

Does country mean where the product was made? No — it filters by the notifying country (the EU/EEA authority that reported the alert). The country of origin (e.g. China) is a separate field on each record: countryOrigin.

Are these the same alerts as the weekly RAPEX report? Yes. Safety Gate is the successor of RAPEX; every alert notified under the GPSD/Regulation (EU) 2023/988 appears in this database.

Is this legal? Yes — the EU publishes this data openly for reuse, with attribution. The Actor preserves official content and includes the alertUrl link to the authoritative record in every row. Verify current measures on the linked official alert before taking compliance or legal action.

Can I get alerts from all countries at once? Yes — leave country empty. Use dateFrom to bound the window so large pulls stay fast.

Limitations

  • Weekly publication cadence — the Commission publishes new alerts weekly (Fridays) plus immediate publications for serious risks; a run reflects the database at that moment, not a live news feed.
  • Official notifications only — records are notified Safety Gate alerts; wider market-surveillance findings that were never notified are not included.
  • Localised fields — descriptions and product names come back in the requested language where the portal carries translations; older alerts can be English-only.
  • Public JSON API surface only — no login-gated or internal endpoints are accessed, so the Actor needs no credentials and never breaks on portal UI changes.
  • Verify before acting — measures on an alert can be updated after publication; always check the linked official alertUrl before compliance or legal action.