EU Safety Gate Product Recalls Scraper avatar

EU Safety Gate Product Recalls Scraper

Pricing

Pay per event

Go to Apify Store
EU Safety Gate Product Recalls Scraper

EU Safety Gate Product Recalls Scraper

Monitor EU Safety Gate/RAPEX alerts for unsafe products, recalls, risks, brands, barcodes, measures, countries, and images.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Monitor EU Safety Gate / RAPEX product safety alerts with structured fields for compliance, marketplace trust and safety, and brand-protection workflows.

What does this actor do?

EU Safety Gate Product Recalls Scraper extracts dangerous non-food product alerts from the European Commission's public Safety Gate data.

It crawls monthly web reports, hydrates every alert detail record, and saves a normalized dataset.

You get product names, categories, brands, barcodes, model numbers, risks, legal provisions, measures, countries, traceability details, product image URLs, and official source links.

Who is it for?

Retail compliance teams use it to monitor recalled or dangerous products sold in the EU.

Marketplace trust and safety teams use it to match listings against alert references, brands, barcodes, and model identifiers.

Importers and distributors use it to watch product categories relevant to their catalog.

Brand-protection teams use it to detect counterfeit or unsafe product mentions.

Data teams use it to feed internal recall monitoring dashboards.

Why use it?

Safety Gate pages are useful for manual review, but compliance teams need repeatable exports.

This actor turns public EU alert data into a clean dataset that can be scheduled, filtered, exported, and connected to downstream systems.

It is HTTP-first and does not need logins, browser automation, or cookies.

What data can you extract?

Field groupExamples
Alert identitynotificationId, reference, notificationTypeCode, reportCode
DatesreportPublicationDate, publicationDate, modificationDate
GeographycountryCode, countryName, reactingCountries
ProductproductCategory, productName, productSpecificName
IdentifiersbrandNames, barcodes, modelTypes, batchNumbers
RiskriskTypes, riskDescription, legalProvision
Actionmeasures, measureTypes, economicOperators
EvidenceimageUrls, detailUrl, apiUrl

How much does it cost to monitor EU product recalls?

The actor uses pay-per-event pricing.

There is a small start fee for each run and a per-alert charge for each saved Safety Gate alert.

Use a low maxItems value for exploratory runs and increase it for scheduled compliance monitoring.

Input options

startYear, startMonth, endYear, and endMonth define the inclusive reporting period.

maxItems limits the number of saved alerts.

language controls localized detail text.

countries filters by notifying country code or name.

productCategories filters product category text.

riskTypes filters risk text or risk keys.

includePhotos adds product image API URLs.

includeCorrigendaOnly keeps update-only rows that have no product detail.

Example input

{
"startYear": 2026,
"startMonth": 6,
"endYear": 2026,
"endMonth": 6,
"maxItems": 20,
"language": "en",
"countries": [],
"productCategories": ["toys"],
"riskTypes": [],
"includePhotos": true,
"includeCorrigendaOnly": false
}

Example output

{
"reference": "SR/01814/26",
"countryName": "France",
"productCategory": "TOYS",
"productName": "Sand-filled figurine toy",
"brandNames": ["Invincible heroes"],
"barcodes": ["8053735019924"],
"riskTypes": ["HEALTH_RISK_OTHER"],
"measures": ["PRODUCT_RECALL_FROM_CONSUMERS"],
"detailUrl": "https://ec.europa.eu/safety-gate-alerts/screen/webReport/alertDetail/10099299"
}

How to run

  1. Choose a month or month range.

  2. Set maxItems to the number of alerts you need.

  3. Optionally add country, category, or risk filters.

  4. Run the actor.

  5. Export the dataset as JSON, CSV, Excel, XML, or RSS from Apify.

Scheduling ideas

Run daily for the current month to catch newly published alerts.

Run weekly for a category-specific workflow such as toys, cosmetics, machinery, or electrical appliances.

Run monthly for compliance archive snapshots.

Integration workflows

Send output to Google Sheets for compliance review.

Push barcodes and model numbers into a product catalog matching pipeline.

Trigger alerts in Slack when a monitored brand appears.

Load results into a warehouse for historical Safety Gate trend analysis.

Connect to Zapier, Make, n8n, Airbyte, or custom webhooks through Apify integrations.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/eu-safety-gate-product-recalls-scraper').call({
startYear: 2026,
startMonth: 6,
endYear: 2026,
endMonth: 6,
maxItems: 20,
language: 'en'
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/eu-safety-gate-product-recalls-scraper').call(run_input={
'startYear': 2026,
'startMonth': 6,
'endYear': 2026,
'endMonth': 6,
'maxItems': 20,
'language': 'en',
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~eu-safety-gate-product-recalls-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"startYear":2026,"startMonth":6,"endYear":2026,"endMonth":6,"maxItems":20,"language":"en"}'

MCP usage

Use the Apify MCP server with tools scoped to this actor:

https://mcp.apify.com/?tools=automation-lab/eu-safety-gate-product-recalls-scraper

Claude Code setup:

$claude mcp add apify-eu-safety-gate https://mcp.apify.com/?tools=automation-lab/eu-safety-gate-product-recalls-scraper

Desktop JSON config example:

{
"mcpServers": {
"apify-eu-safety-gate": {
"url": "https://mcp.apify.com/?tools=automation-lab/eu-safety-gate-product-recalls-scraper"
}
}
}

Example prompts:

  • "Run the EU Safety Gate Product Recalls Scraper for the last month and summarize alerts involving toys with choking or chemical risks."

  • "Extract 100 recent EU Safety Gate alerts and list brands, barcodes, and measures for retail compliance review."

  • "Find Safety Gate alerts from France and group them by product category and risk type."

Tips for better results

Use English (en) if you want consistent downstream matching.

Use product category filters after a broad test run so you can see the category labels used by the EU source.

Keep includeCorrigendaOnly disabled unless you specifically track notification update history.

Use barcodes, model numbers, and brand names together for matching; many alerts have incomplete product identifiers.

FAQ

Can I monitor only one country?

Yes. Add an ISO country code such as FR, DE, or ES to countries.

Can I monitor a product category?

Yes. Add category keywords such as toys, cosmetics, or electrical to productCategories.

Does this actor download images?

No. It saves official image URLs so your workflow can open or download them separately.

Troubleshooting

Why did my run return fewer items than maxItems?

Your filters may exclude many alerts, or the selected month range may contain fewer matching records.

Why are some fields empty?

Safety Gate records vary by notifying authority. Some alerts omit barcodes, model numbers, batches, or traceability data.

Why do image URLs point to an API endpoint?

The EU Safety Gate source serves product photos through public image endpoints. The actor preserves those source URLs.

Legality and source notes

This actor reads public European Commission Safety Gate data.

Respect the source terms, use reasonable schedules, and avoid unnecessary repeated scraping.

The output is not legal advice. Compliance decisions should be reviewed by qualified staff.

Explore other Automation Lab compliance and government-data actors:

Dataset fields reference

notificationId is the EU Safety Gate notification identifier.

reference is the public Safety Gate reference.

notificationTypeCode and notificationTypeName describe the notification basis.

reportCode identifies the monthly web report.

countryCode and countryName identify the notifying country.

productCategory and productCategoryKey identify the product group.

brandNames, barcodes, modelTypes, and batchNumbers support catalog matching.

riskTypes, riskDescription, and legalProvision explain the hazard.

measures, measureTypes, and economicOperators describe actions taken.

traceability stores source chain information when provided.

detailUrl links to the official Safety Gate alert page.

Support

If you need a new filter, field, or integration pattern, open an issue on the actor page with a sample Safety Gate alert reference and the workflow you want to automate.