EUDAMED Certificates Scraper
Pricing
from $0.02 / 1,000 certificate saveds
EUDAMED Certificates Scraper
Export public EUDAMED MDR/IVDR certificate records with status, validity dates, manufacturers, notified bodies, and source URLs.
Pricing
from $0.02 / 1,000 certificate saveds
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Export public EUDAMED MDR/IVDR certificate records into structured datasets for regulatory affairs, compliance monitoring, and market intelligence.
What does EUDAMED Certificates Scraper do?
- Export public EUDAMED MDR/IVDR certificate records from the European Commission API.
- Search by certificate status, certificate number, manufacturer SRN/name, notified body SRN, or direct EUDAMED URLs.
- Save structured certificate data for compliance review, monitoring, and due diligence.
Who is it for?
- Regulatory affairs teams tracking MDR/IVDR certificate status.
- Medtech compliance teams validating suppliers and manufacturers.
- Competitive-intelligence analysts monitoring notified bodies and manufacturers.
- Due-diligence teams checking certificate validity before partnerships or acquisitions.
Why use it?
- The actor turns EUDAMED certificate search results into a clean dataset.
- It includes detail API enrichment when available.
- It preserves source URLs so auditors can trace every row back to EUDAMED.
Data you can extract
- Certificate UUID and ULID.
- Certificate number, certificate ID, type, status, legislation, dates, manufacturer, notified body, version state, and source URLs.
- The dataset is designed for CSV, JSON, Excel, API, and integration exports.
How much does it cost to scrape EUDAMED certificates?
- The actor uses pay-per-event pricing.
- There is a small start event and one charge for each certificate record saved.
- Final tiered prices are set from cloud run cost measurements before publication.
How to scrape EUDAMED certificates
- Choose a certificate status or another filter.
- Set the maximum number of certificates.
- Keep detail enrichment enabled when you need certificate ID, legislation, and manufacturer details.
- Run the actor and export the dataset.
Input options
- startUrls accepts EUDAMED certificate search API URLs and certificate detail API URLs.
- certificateNumber supports exact certificate lookups.
- certificateStatus accepts shortcuts such as issued or full EUDAMED refdata status codes.
- actorSrn, actorName, and notifiedBodySrn narrow searches to manufacturers and notified bodies.
Output example
- Each row represents one EUDAMED certificate.
- Rows include certificateNumber, certificateStatus, certificateType, issueDate, expiryDate, notifiedBodySrn, actorSrn, actorName, uuid, rawApiUrl, rawDetailUrl, and fetchedAt.
- Optional detail enrichment adds certificateId, applicableLegislation, decisionDate, and manufacturerUuid.
Tips for better results
- Use exact certificate numbers for audit lookups.
- Use notifiedBodySrn for recurring notified-body monitoring.
- Use certificateStatus issued for broad market exports.
- Use smaller maxItems values for quick tests.
Integrations
- Send the dataset to Google Sheets for compliance review.
- Use webhooks to alert your team when scheduled runs finish.
- Pull dataset items through the Apify API into BI tools, ERPs, or regulatory databases.
- Schedule recurring runs to monitor certificate status changes.
API usage with Node.js
- Use the Apify client to run automation-lab/eudamed-certificates-scraper and fetch dataset items.
- Example input: certificateStatus issued, maxItems 100, includeDetails true.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/eudamed-certificates-scraper').call({ certificateStatus: 'issued', maxItems: 100, includeDetails: true });const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
API usage with Python
- Call the actor with apify-client for Python.
- Fetch the default dataset items after the run completes.
- Store the rows in your compliance database.
from apify_client import ApifyClientclient = ApifyClient("<APIFY_TOKEN>")run = client.actor("automation-lab/eudamed-certificates-scraper").call(run_input={"notifiedBodySrn": "0633", "maxItems": 100, "includeDetails": True})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items[0])
API usage with cURL
- POST to the Apify actor runs endpoint for automation-lab/eudamed-certificates-scraper.
- Pass JSON input with certificateNumber, notifiedBodySrn, or certificateStatus.
- Download dataset items from the run dataset URL.
curl -X POST "https://api.apify.com/v2/acts/automation-lab~eudamed-certificates-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"certificateNumber":"Z-25-052-S-IX-E","includeDetails":true,"maxItems":5}'
MCP usage
- Use Apify MCP with Claude Desktop or Claude Code.
- Configure the MCP URL with
?tools=automation-lab/eudamed-certificates-scraper. - Claude Code setup command:
$claude mcp add apify https://mcp.apify.com/?tools=automation-lab/eudamed-certificates-scraper
- Claude Desktop JSON configuration:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=automation-lab/eudamed-certificates-scraper"}}}
- Example prompt: "Run the EUDAMED Certificates Scraper for issued certificates and summarize certificates expiring soon."
- Example prompt: "Extract certificates for notified body SRN 0633 and return manufacturer names, expiry dates, and source URLs."
Legality and data source
- This actor accesses public EUDAMED certificate endpoints made available by the European Commission.
- Do not use the output as a substitute for legal or regulatory advice.
- Always verify critical decisions against the official EUDAMED source links in the dataset.
FAQ
- Can I scrape all issued certificates? Yes, set certificateStatus to issued and increase maxItems.
- Can I search one certificate number? Yes, use certificateNumber for exact lookup.
- Why is a notified body name sometimes blank? Some search rows expose SRN first; detail data depends on the public API response.
- Does it require login? No public API calls worked without login during feasibility testing.
Troubleshooting
- If you get zero rows, loosen filters and try status issued.
- If a direct URL fails, make sure it is a public EUDAMED certificate search or certificate detail API URL.
- If detail fields are missing, keep includeDetails enabled and review rawApiUrl.
Related scrapers
- Use other automation-lab compliance and public-source scrapers when your workflow needs company, registry, or document data outside EUDAMED certificates.
- This actor is intentionally focused on EUDAMED certificate records rather than broad medical-device listings.
Changelog
- Initial private release supports public EUDAMED certificate search and detail enrichment.
- Future releases may add change detection helpers if user demand appears.
Field reference
uuid— exported when available from the EUDAMED search or detail API.ulid— exported when available from the EUDAMED search or detail API.certificateNumber— exported when available from the EUDAMED search or detail API.certificateId— exported when available from the EUDAMED search or detail API.certificateType— exported when available from the EUDAMED search or detail API.certificateStatus— exported when available from the EUDAMED search or detail API.applicableLegislation— exported when available from the EUDAMED search or detail API.issueDate— exported when available from the EUDAMED search or detail API.decisionDate— exported when available from the EUDAMED search or detail API.startingValidityDate— exported when available from the EUDAMED search or detail API.expiryDate— exported when available from the EUDAMED search or detail API.versionNumber— exported when available from the EUDAMED search or detail API.revisionNumber— exported when available from the EUDAMED search or detail API.versionState— exported when available from the EUDAMED search or detail API.latestVersion— exported when available from the EUDAMED search or detail API.notifiedBodySrn— exported when available from the EUDAMED search or detail API.notifiedBodyName— exported when available from the EUDAMED search or detail API.actorSrn— exported when available from the EUDAMED search or detail API.actorName— exported when available from the EUDAMED search or detail API.actorStatus— exported when available from the EUDAMED search or detail API.manufacturerUuid— exported when available from the EUDAMED search or detail API.authorizedRepresentativeSrns— exported when available from the EUDAMED search or detail API.rawDetailUrl— exported when available from the EUDAMED search or detail API.rawApiUrl— exported when available from the EUDAMED search or detail API.sourceSearchUrl— exported when available from the EUDAMED search or detail API.fetchedAt— exported when available from the EUDAMED search or detail API.
Example workflows
Build a certificate audit evidence pack
Search by certificateNumber, keep includeDetails enabled, and export the result as JSON or CSV. Preserve rawDetailUrl, rawApiUrl, and fetchedAt so an auditor can trace each row back to the EUDAMED source record and the time it was collected.
Monitor a notified body's certificates
Filter by notifiedBodySrn and schedule recurring Actor runs. Compare each new dataset with the previous export to detect new certificates, status changes, or approaching expiry dates associated with that notified body.
Perform manufacturer due diligence
Search by actorSrn or actorName, optionally narrow by certificateStatus, and review the returned certificate and authorized-representative fields. Load the structured output into a compliance system to assess a manufacturer's current EUDAMED certificate footprint before onboarding or periodic review.
Operational notes
- Use conservative maxItems values when testing new filters.
- Schedule recurring runs for monitoring workflows rather than manually exporting rows.
- Keep rawApiUrl and rawDetailUrl columns in downstream systems for traceability.
- Review EUDAMED source records before making regulatory decisions.
- Use certificateNumber lookups for audit evidence packs.
- Use notifiedBodySrn filters for notified-body monitoring.
- Use actorSrn filters for manufacturer due diligence.
- Use certificateStatus filters for broad market snapshots.
- Export to CSV when sharing with non-technical reviewers.
- Export to JSON when loading into data pipelines.
- Pair expiryDate with scheduled runs to identify certificates approaching renewal.
- Pair certificateStatus with historical datasets to detect status changes.
- Keep includeDetails enabled for the richest dataset.
- Disable includeDetails only for faster broad sampling.
- Contact the official EUDAMED source for authoritative interpretation.