EUDAMED Scraper - EU Medical Devices, MDR & IVDR
Under maintenancePricing
from $0.02 / actor start
EUDAMED Scraper - EU Medical Devices, MDR & IVDR
Under maintenanceExport devices, manufacturers and notified-body certificates from EUDAMED, the EU's mandatory medical device registry. Risk class, market status, sterility, latex and CMR flags, market availability per country, CND codes and warnings — codes resolved to plain language.
Pricing
from $0.02 / actor start
Rating
0.0
(0)
Developer
Perceptron Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
5 hours ago
Last modified
Categories
Share
EUDAMED Scraper — EU Medical Device Registry (MDR/IVDR)
Export the EU's mandatory medical device registry as clean, analysis-ready data: ~3.8 million devices, 32,500+ manufacturers and 5,500+ notified-body certificates, with every regulatory code resolved to plain language.
EUDAMED is where every manufacturer must register every device sold in the EU under MDR (2017/745) and IVDR (2017/746). It has no official API, no export button and no bulk download. This actor is the practical alternative.
Why this is not a five-minute scraper
The registry's own interface hides most of the value behind three obstacles. This actor solves all three:
| Obstacle | What it means | How this actor handles it |
|---|---|---|
| Codes instead of values | Every field arrives as a token like refdata.risk-class.class-iii or CW010 | Resolves against 12 reference tables — including all 423 standardised warning texts — so you get "Class III" and the full warning sentence |
| Thin list view | The searchable list returns 32 fields of which only ~15 carry data — no trade name, no sterility, no markets | Fetches the full profile per device (61 fields) and merges it |
| Multilingual text arrays | Trade names and descriptions are stored once per EU language | Flattens to your chosen language with English fallback |
On top of that the registry throttles hard — bursts get cut off for minutes, and at busy times a single device profile takes several seconds. This actor paces every request, backs off exponentially and keeps an eye on the run timeout, so a run always finishes with the records it has — instead of dying halfway.
What you get per device
| Field | Example |
|---|---|
tradeName, primaryDi, basicUdi, referenceNumber | ASSUPRO · 48033439452423 · 8033439ASSUPRO4P · 02PY891SAM |
manufacturerName, manufacturerSrn, manufacturerStatus | ASSUT EUROPE SPA · IT-MF-000018178 · Active |
riskClass, deviceStatus | Class III · On the market |
placedOnTheMarketCountry | Italy |
marketsWhereAvailable | Bulgaria, Cyprus, Czechia, Germany, France, Italy, Malta, Romania |
nomenclatures | H010201010402 — Polypropylene monofilament with needle for video surgery |
isSterile, isSingleUse, isReprocessed, containsLatex, containsCmrSubstance, isEndocrineDisruptor, annexXVIApplicable, isOemProduct | true / false flags |
udiProductionIdentifiers | batchNumber, expirationDate |
criticalWarnings | full standardised warning texts |
instructionsForUseUrl | link to the manufacturer's eIFU document |
versionNumber, isLatestVersion, lastUpdated, eudamedUrl | provenance |
Manufacturer mode adds company records with SRN, registration date, full postal address, e-mail and phone — the registry's economic-operator data.
Certificate mode returns notified-body certificates with type, status, issue/expiry dates, manufacturer SRN and notified-body SRN.
Use cases
- Regulatory affairs & market access — verify what a competitor has registered, in which countries, under which risk class
- Competitive intelligence in medtech — track new registrations, device families under a Basic UDI-DI, and market withdrawals
- Supplier & partner search — find every EU manufacturer in a device category, with contact details
- Compliance & audit — check certificate validity and expiry against manufacturers you buy from
- Distribution scouting —
marketsWhereAvailableshows which EU countries a device is not yet sold in - Research & data products — a normalised feed of the EU device market
- AI agents — clean schema and plain-language values, callable via MCP
Input examples
Every high-risk (Class III) device currently on the market, with full profiles:
{"mode": "devices","risk_class": "refdata.risk-class.class-iii","device_status": "refdata.device-model-status.on-the-market","include_details": true,"max_items": 1000}
All versions of one device family:
{ "mode": "devices", "basic_udi": "8033439ASSUPRO4P" }
German manufacturers with contact details:
{ "mode": "manufacturers", "actor_type": "refdata.actor-type.manufacturer", "max_items": 2000 }
Notified-body certificates:
{ "mode": "certificates", "max_items": 500 }
Output example (shortened)
{"tradeName": "ASSUPRO","primaryDi": "48033439452423","basicUdi": "8033439ASSUPRO4P","manufacturerName": "ASSUT EUROPE SPA","manufacturerSrn": "IT-MF-000018178","riskClass": "Class III","deviceStatus": "On the market","placedOnTheMarketCountry": "Italy","marketsWhereAvailable": ["Bulgaria", "Cyprus", "Czechia", "Germany", "France", "Italy", "Malta", "Romania"],"nomenclatures": [{ "code": "H010201010402", "description": "POLYPROPYLENE MONOFILAMENT WITH NEEDLE FOR VIDEO SURGERY" }],"isSterile": true,"isSingleUse": true,"containsLatex": false,"udiProductionIdentifiers": ["batchNumber", "expirationDate"],"instructionsForUseUrl": "https://www.assuteurope.com/public/eifu/12A_MDR_R0.pdf","eudamedUrl": "https://ec.europa.eu/tools/eudamed/#/screen/search-device/8de0765f-..."}
Performance & limits — stated honestly
- The registry serves 300 records per page maximum, and this is a hard server-side cap that cannot be raised.
- With
include_details: trueeach device costs one extra request. The registry's own speed varies a lot during the day: measured between ~2 devices per second and one device every 5–6 seconds. Plan large exports with a generous run timeout (the default is one hour). - A run never dies at its timeout. The actor watches the time left and, when it runs short, stops cleanly, keeps every record it has finished and says so in the status message. Records whose full profile could not be loaded in time are left out instead of being sold as complete.
- Filters the registry actually supports are risk class, market status, Primary DI and Basic UDI-DI. Manufacturer-name and country filters are not supported by the registry's search endpoint; filter those in your own pipeline after export. This actor only sends parameters that work, instead of silently ignoring your input.
- If the registry stops answering before any search results arrive, the actor fails loudly with an explanation rather than writing empty rows.
Data protection & legal
- All data is mandatory public disclosure under MDR Art. 33 / IVDR Art. 30. The EU publishes it precisely so it can be inspected.
- Records describe companies and products, not natural persons. The e-mail and phone fields in operator mode are the company's official regulatory contact points as published in the registry.
- No login, no paywall and no access control is circumvented; the endpoints used are the same ones the public web interface calls.
- Not affiliated with or endorsed by the European Commission.
What does a run cost?
$0.02 per run start plus a price per record that drops with your Apify plan — down to half the base price:
| Your Apify plan | Per record | 1,000 records |
|---|---|---|
| Free | $0.03 | $30.02 |
| Starter | $0.0225 | $22.52 |
| Scale | $0.018 | $18.02 |
| Business & Enterprise | $0.015 | $15.02 |
Devices, manufacturers and certificates cost the same per record. You pay only for records actually delivered — if a run stops early because its timeout is near, the records it did not finish are not charged.
For comparison: commercial medtech market-intelligence subscriptions covering this data start in the five-figure range per year.
Auf Deutsch: Medizinprodukte aus EUDAMED exportieren
Dieser Actor exportiert Medizinprodukte, Wirtschaftsakteure (Hersteller, Importeure, Bevollmächtigte) und Zertifikate benannter Stellen aus EUDAMED, der Europäischen Datenbank für Medizinprodukte nach MDR und IVDR. Risikoklasse, Marktstatus, Sterilität, Latex- und CMR-Kennzeichen, Marktverfügbarkeit je Land, CND-Codes und Warnhinweise kommen in Klartext statt als Codes.
Filter: Risikoklasse, Marktstatus, Primary DI, Basic UDI-DI sowie Firmenname bei Herstellern und Zertifikaten. Typische Anwendungsfälle: Regulatory Intelligence, Wettbewerbsanalyse, Marktzugang, Lieferanten- und Herstellerprüfung.
FAQ
Is there an official EUDAMED API or export? No. EUDAMED has a public web interface but no documented API, no export button and no bulk download. This actor is the practical way to get the data as a file.
How many devices are in the registry? About 2.99 million device records, of which roughly 122,000 are Class III. Plus 31,800 economic operators and 4,055 notified-body certificates.
Can I filter by manufacturer or country?
Not at the registry level — its search endpoint ignores those parameters,
silently. This actor only sends filters that actually work (risk class, market
status, Primary DI, Basic UDI-DI) and tells you so, rather than pretending. For
manufacturer or country filtering, export and filter in your own pipeline, or
use mode: "manufacturers" which returns operators with their country.
Why is it slower than other scrapers? Deliberately, and partly by necessity. The registry throttles bursts (HTTP 429/502) and at busy times takes several seconds per device profile. This actor paces itself, backs off exponentially, and keeps an eye on the run's timeout — which is the difference between a run that finishes and a run that dies at 40 %.
What is a Basic UDI-DI? The identifier for a device family. Passing one returns every device version that belongs to it — the fastest way to map a competitor's product line.
Is this data legal to use? Yes. It is mandatory public disclosure under MDR Art. 33 and IVDR Art. 30, about companies and products rather than natural persons, published by the EU precisely so it can be inspected.
Related actors
| Actor | What it does |
|---|---|
| Imprint & Impressum Scraper | Company data from the Impressum of any DACH website: e-mail, phone, VIES-checked VAT ID, register number |
| Free Website Contact & Imprint Scraper | Free edition: up to 10 websites per run, same fields |
| Google Ads Transparency Scraper | Which companies advertise on Google, how many ads, who runs them — plus every ad and a monitoring mode |
| PDF & DOCX to Markdown Converter | PDF, Word, Excel and PowerPoint to Markdown for AI — tables as JSON, OCR for scans |
| Arbeitsagentur Jobs Scraper | Jobs from the Bundesagentur für Arbeit Jobbörse via the official API |
| kununu Scraper | Employer reviews, ratings, salaries and benefits for DACH companies |
| TED Tenders API | EU public tenders from TED — all 27 member states, CPV and deadline filters |
| Marktstammdatenregister (MaStR) Scraper | Solar, wind and battery storage plants in Germany with operator and capacity |
| Messe München Exhibitor List Scraper | Exhibitor lists of bauma, IFAT, BAU, automatica, ceramitec and more |
| Koelnmesse Exhibitor List Scraper | Exhibitor lists of Anuga, ISM, imm cologne, interzum, ORGATEC and more |
| App Store & Google Play Scraper | Ratings, reviews and keyword rankings from both app stores in one dataset |
| DACH & EU Data Source Finder | Free: tells you which ready-made scraper covers your data source |
Support
Bug reports are welcome in the Issues tab.