EU Tenders Scraper
Pricing
from $2.10 / 1,000 results
EU Tenders Scraper
Scrape public procurement tenders from TED Europa. Access over 700B+ EUR in annual contract opportunities across the European Union.
Pricing
from $2.10 / 1,000 results
Rating
0.0
(0)
Developer
Artificially
Maintained by CommunityActor stats
0
Bookmarked
40
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
EU Tenders (TED) Scraper - Enhanced
Scrape public procurement tenders from TED Europa with buyer profiles, deadline tracking, and tender analytics. Access contract opportunities worth over 700 billion EUR annually.
Use with AI agents (MCP)
This actor works as a tool for AI agents through Apify's MCP server at https://mcp.apify.com, so Claude, ChatGPT, Cursor and other MCP clients can search EU tenders directly. For agents, set "compactOutput": true and keep maxTenders small (5-20) to get short, token-friendly results.
Quick setup (sign in with your Apify account when asked):
- Claude (claude.ai or Claude Desktop): Settings → Connectors → Add custom connector, and paste
https://mcp.apify.com?tools=artificially/eu-tenders-scraper - Claude Code or Cursor via the Apify CLI (latest version,
apify upgrade):apify mcp install claude-code --tools artificially/eu-tenders-scraper(usecursorinstead ofclaude-codefor Cursor) - Any MCP client (Cursor, VS Code, Windsurf):
{"mcpServers": {"apify": { "url": "https://mcp.apify.com?tools=artificially/eu-tenders-scraper" }}}
Try asking:
- "Find open EU public tenders for software development in Germany with deadlines in the next 30 days."
- "List EU tenders over EUR 1M for cybersecurity services published this month."
Features
- Full-text search across TED notices, newest first
- Filters: buyer country, CPV codes, notice type, procedure type, publication date range, estimated value range
- Deadline filters: only open opportunities, or a minimum number of days until the tender deadline
- Rich notice data: title (original language and English), description, lots, CPV codes, place of performance (NUTS), contract dates, estimated value in the notice currency
- Award data for award notices: winners, awarded value, number of tenders received
- Buyer profile (optional): the buyer's recent TED notices, top CPV codes and preferred procedures
- Similar tenders (optional): recent notices with the same main CPV code in the same country
Use Cases
- Track government procurement opportunities in the EU
- Deadline-driven opportunity alerts
- Buyer relationship management
- Competitive analysis in EU public procurement
- Market research for public sector sales
- Build comprehensive tender databases
Input
| Field | Type | Default | Description |
|---|---|---|---|
searchQuery | string | - | Full-text keywords (multi-word queries match as a phrase) |
country | string | - | Buyer country, ISO 2-letter code (DE, FR, IT, ...) |
cpvCodes | array | - | CPV codes, e.g. ["72000000"] |
noticeType | string | all | cn-standard, cn-social, pin-only, can-standard, can-social, veat, subco |
procedureType | string | all | open, restricted, neg-w-call, neg-wo-call, comp-dial, innovation |
maxTenders | integer | 100 | Maximum tenders to return (1-1000) |
dateFrom | string | last 30 days if no query | Publication date from (YYYY-MM-DD) |
dateTo | string | - | Publication date to (YYYY-MM-DD) |
onlyOpenDeadlines | boolean | false | Only notices whose submission deadline is in the future |
minDaysUntilDeadline | integer | - | Minimum days until the earliest submission deadline |
minEstimatedValue / maxEstimatedValue | integer | - | Estimated value range (notice currency) |
includeFullDetails | boolean | true | Descriptions, lots, buyer contacts, contract dates, award details |
includeBuyerProfile | boolean | true | Add buyerProfile (one extra request per new buyer) |
includeSimilarTenders | boolean | false | Add similarTenders (one extra request per tender) |
maxSimilarTenders | integer | 5 | Similar tenders per result |
compactOutput | boolean | false | Slim items with only key fields (see below); recommended for AI agents |
Example Input
{"searchQuery": "software development","country": "DE","onlyOpenDeadlines": true,"minDaysUntilDeadline": 14,"includeBuyerProfile": true,"includeFullDetails": true,"maxTenders": 50}
Output
Each tender is one dataset item (abbreviated real example):
{"noticeId": "656672-2026","tedNoticeNumber": "656672-2026","documentNumber": "ead5e827-f2fd-41fb-b8ba-735204aa6390","publicationDate": "2026-09-23","submissionDeadline": "2026-10-06T10:00:00+02:00","contractStartDate": "2027-01-04","contractEndDate": "2030-12-31","noticeType": "cn-standard","noticeTypeDescription": "Contract Notice","procedureType": "open","contractType": "services","title": "Rahmenvereinbarungen Programmier- und Beratungsleistungen zur Anwendungsentwicklung im Ressort des StMELF","titleEnglish": "Germany – IT services: consulting, software development, Internet and support – Rahmenvereinbarungen ...","shortDescription": "Benötigt werden Dienstleistungen im Bereich der Entwicklung und Pflege von Anwendungen ...","fullDescription": "...","estimatedValue": 46875000,"currency": "EUR","valueRange": null,"buyer": {"officialName": "Freistaat Bayern, vertreten durch das Bayer. StM f. Ernährung, Landwirtschaft, Forsten und Tourismus","address": "Ludwigstraße 2","city": "München","postalCode": "80539","country": "Germany","countryCode": "DE","contactEmail": "poststelle@stmelf.bayern.de","contactPhone": "+49 8921820","contactUrl": "https://www.stmelf.bayern.de/","buyerType": "body-pl-ra","mainActivity": "gen-pub"},"cpvCodes": [{ "code": "72000000", "description": null }, { "code": "72211000", "description": null }],"mainCpvCode": "72000000","nutsCode": "DE212","country": "Germany","countryCode": "DE","region": "DE21","city": "München","numberOfLots": 5,"lots": [{ "lotNumber": 1, "lotId": "LOT-0001", "title": "Dienstleistungen Anwendungsentwicklung", "estimatedValue": 9375000, "cpvCode": "72211000" }],"awarded": false,"winnerName": null,"awardedValue": null,"numberOfTenders": null,"url": "https://ted.europa.eu/en/notice/-/detail/656672-2026","pdfUrl": "https://ted.europa.eu/en/notice/656672-2026/pdf","xmlUrl": "https://ted.europa.eu/en/notice/656672-2026/xml","buyerProfile": {"name": "Freistaat Bayern, vertreten durch das Bayer. StM f. ...","totalTenders": 42,"sampleSize": 25,"averageValue": 17432050,"topCpvCodes": [{ "code": "32232000", "description": null, "count": 5 }],"recentTenders": [{ "noticeId": "632025-2026", "title": "...", "value": null, "publicationDate": "2026-09-11", "url": "..." }],"preferredProcedures": [{ "type": "open", "count": 21 }]},"daysUntilDeadline": 13,"isExpired": false,"competitionLevel": null,"scrapedAt": "2026-09-23T09:00:43.560Z"}
Notes:
- Values are reported in the notice's own currency (
currency), not converted to EUR. titleis in the notice's original language;titleEnglishis TED's English summary title.- Fields are
nullwhen the notice does not contain that information (e.g. older pre-2023 notices carry fewer structured fields).nutsDescriptionand CPVdescriptionare currently alwaysnull. buyerProfile.totalTendersis the number of TED notices matching the buyer name and country; the other profile figures are computed from thesampleSizemost recent notices of that exact buyer.awardedValue,winnerName,winnerCountry,numberOfTendersandcompetitionLevelare filled for award notices when TED provides them.
After each run, the key-value store contains a SUMMARY record (query used, items saved, skipped and filtered counts), plus FAILED_REQUESTS and INVALID_TENDERS.
Compact output
With "compactOutput": true each item keeps only the key decision fields: noticeId, title, titleEnglish, publicationDate, submissionDeadline, daysUntilDeadline, isExpired, noticeType, procedureType, contractType, estimatedValue, currency, buyerName, buyerEmail, countryCode, city, mainCpvCode, cpvCount, numberOfLots, lotsCount, awarded, winnerName, awardedValue, numberOfTenders, competitionLevel, url, scrapedAt. Descriptions, full lot lists, buyer profiles and similar tenders are left out.
Pricing
This actor uses pay-per-event pricing; see the Pricing tab for current prices. You only pay for valid results: incomplete notices, duplicates and failed requests are skipped and never charged. If you set a maximum cost per run, the actor stops cleanly when it is reached.
No API key required - uses TED Europa's public search API.
Tips
-
Active opportunities: Enable
onlyOpenDeadlinesto filter to tenders you can still bid on (usenoticeType: "cn-standard"to exclude award notices) -
Preparation time: Use
minDaysUntilDeadline: 14to find opportunities with at least 2 weeks to prepare -
Buyer intelligence:
includeBuyerProfilereveals the buyer's recent procurement patterns; turn it off for faster runs -
Similar tenders: Enable
includeSimilarTendersto discover related opportunities -
Procedure types:
open- Open to all qualified biddersrestricted- Prequalification requiredneg-w-call- Negotiated with prior publicationcomp-dial- Competitive dialogue
Data Source
Data from TED Europa, the official journal for European public procurement.
Support
- Built by: Artificially
- Issues: Report bugs or request features via Apify Console
Related actors
- SAM.gov Contract Opportunities Scraper - US federal contract opportunities, solicitations and award notices
- US Government Contracts Scraper - awarded US federal contracts from USAspending.gov