EU Tenders Scraper (TED): Public Procurement Notices
Pricing
from $2.80 / 1,000 notices
EU Tenders Scraper (TED): Public Procurement Notices
Search every EU public tender on TED, the EU's official procurement journal: calls for tenders, contract awards and upcoming tenders from 30+ countries. Filter by keyword, CPV code, country, deadline and value, or get only new notices since your last run. Official TED API.
Pricing
from $2.80 / 1,000 notices
Rating
0.0
(0)
Developer
agentready
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Security
Limited permissionsShare
Search every EU public tender published on TED (Tenders Electronic Daily), the European Union's official procurement journal. That covers calls for tenders you can still bid on, contract awards showing who won and for how much, and prior notices of upcoming tenders, from 30+ countries, in one clean, flat format.
Filter by keyword, CPV category, country, deadline and value, or turn on "only new notices" to get just what was published since your last run. Data comes from the official TED Search API: no scraping, no logins, no blocked pages.
| Price | $3.50 per 1,000 notices, no monthly fee. Searches with no matches cost nothing. |
| Input | Keywords, CPV codes, countries, notice type (call for tenders, award, prior notice), deadline and value filters. |
| Output | English headline, buyer, country, CPV codes, estimated or awarded value, bid deadline, lot titles, links to the notice, PDF and XML |
| Speed | 100 notices (of 1,673 matching) in 4 seconds in our test run (official TED API, no browser) |
What you get
| Published | Kind | Headline (translated) | Buyer | Country | Deadline |
|---|---|---|---|---|---|
| 2026-10-06 | contract | Germany – Construction work – Ensemble Alte Bleiche | Markt Altenstadt | DEU | 2026-11-10 08:15 |
| 2026-10-06 | contract | France – Construction work – Modernisation du Planétarium de Bretagne | Syndicat Mixte du Planetarium de Bretagne | FRA | 2026-11-02 10:00 |
Two real records from TED (shortened). Every record has the same fields; see Output.
Try it in one click
- EU IT and software tenders open for bids
- EU construction tenders open for bids
- Who won EU IT contracts: TED award notices
What you can do with it
- Find tenders to bid on. Get every open call for IT services in Germany and France, updated daily.
- Track competitors and markets. Contract awards show the buyer, the value and the category.
- Plan ahead. Prior information notices reveal tenders months before they open.
- Feed an AI agent or CRM. English headlines, stable IDs and ISO dates make the records easy to use.
Quick start
Open IT tenders from German and French buyers, published in the last 7 days:
{"cpvCodes": ["72000000"],"countries": ["DE", "FR"],"noticeTypes": ["contract"],"onlyOpenForBids": true}
Daily feed of new tenders
Schedule this every morning. The first run returns everything that matches; after that, only new notices appear, and you only pay for those.
{"keywords": ["cybersecurity", "penetration testing"],"countries": ["NL", "BE", "LU"],"publishedWithinDays": 3,"onlyNewNotices": true,"monitoringList": "benelux-security"}
Use a different monitoringList for each scheduled search.
Step-by-step tutorial
A daily feed of EU tenders you can still bid on: open IT tenders from German and French buyers, then a daily feed (with a real example notice).
Input
| Field | What it does |
|---|---|
keywords | Full-text search in any language. Any keyword matches. |
cpvCodes | EU procurement categories. 72000000 also matches every IT sub-category. Find codes. |
countries | Buyer countries: DE, DEU or Germany. |
noticeTypes | contract (open calls), award (winners) and/or prior (upcoming). Default: contract. |
publishedWithinDays | Published in the last N days (default 7). |
onlyOpenForBids | Calls for tenders whose bid deadline hasn't passed. |
minEstimatedValue | Minimum estimated value (notice currency, usually EUR). |
language | Preferred language for titles, headlines and links (default English). |
customQuery | Advanced: any extra TED expert-search condition, ANDed with the rest. |
maxResults | Default 500; 0 means up to 20,000. |
onlyNewNotices / monitoringList | Output only notices not returned in earlier runs under the same list name. |
Output
One record per notice, always with the same fields. Missing values are null.
{"id": "ted:667762-2026","publicationNumber": "667762-2026","noticeKind": "contract","noticeType": "cn-standard","procedureType": "open","contractNature": "services","title": "Restructuration et de Construction neuve du lycée Jean Rostand à Mantes-la-Jolie (78)","headline": "France – Technical control services – Restructuration et de Construction neuve du lycée Jean Rostand à Mantes-la-Jolie (78)","originalLanguage": "fra","description": "Mission de contrôle technique pour la restructuration et de construction neuve du lycée Jean Rostand...","buyerName": "Région Ile de France","buyerCity": "SAINT-OUEN-SUR-SEINE","buyerCountry": "FRA","buyerCountryName": "France","placesOfPerformance": ["FR103", "FRA"],"cpvMain": "71356100","cpvCodes": ["71356100"],"estimatedValue": null,"awardedValue": null,"lotTitles": ["Restructuration et de Construction neuve du lycée Jean Rostand à Mantes-la-Jolie (78)"],"tenderDeadline": "2026-10-30T12:00:00+02:00","publishedAt": "2026-09-29","dispatchedAt": "2026-09-25","noticeVersion": 1,"url": "https://ted.europa.eu/en/notice/-/detail/667762-2026","pdfUrl": "https://ted.europa.eu/en/notice/667762-2026/pdf","xmlUrl": "https://ted.europa.eu/en/notice/667762-2026/xml","scrapedAt": "2026-09-29T12:00:00Z"}
headlineis TED's own translated summary ("Country – Category – Title"). It's the quickest way to read foreign-language notices.titleanddescriptionare in your chosen language when the buyer provided one; otherwise they're in the original language, shown inoriginalLanguage.estimatedValueandawardedValueare{amount, currency}objects.tenderDeadlineis the earliest bid deadline across lots.
Each run also saves a RUN_SUMMARY record with the exact TED query used, how many notices matched, and how many were output. You can paste that query into TED's website to check the results.
Using it from an AI agent (MCP)
This Actor works as a tool in Claude, Cursor and other MCP clients through Apify's MCP server. For example: "Use EU Tenders to list open cloud-hosting tenders from Nordic countries with a deadline after next week." Keep maxResults small for chat use.
Pricing
You pay per notice returned, with no monthly fee. Searches with no matches cost almost nothing. Set a maximum charge on any run and the Actor stops cleanly when it's reached.
Good to know
- Results are newest first. Only the latest version of each notice is returned.
- Keyword search matches text in any language. Adding CPV codes catches notices written in other languages that your keywords would miss.
- TED publishes new notices every weekday morning (Luxembourg time).
- If the input has a mistake, the run ends normally with 0 results, nothing charged, and a status message saying what to fix.
Data source and reuse
Data comes from TED's official public Search API, provided by the Publications Office of the European Union. Under the TED legal notice, notices may be reused, including commercially, with credit given and changes indicated (CC BY 4.0).
Source: TED – Tenders Electronic Daily, © European Union. Changes made: this Actor selects a subset of each notice's fields, picks one language per field, removes duplicate values, and reformats dates and amounts. The full original notice is always linked in url, pdfUrl and xmlUrl. This Actor is not affiliated with or endorsed by the EU.
Frequently asked questions
What is TED?
Tenders Electronic Daily, the EU's official journal for public procurement. Public contracts above the EU thresholds must be published there, so it covers calls for tenders, contract awards and prior notices from 30+ countries.
Do I need a TED account or API key?
No. The Actor uses TED's official public search API. You only need an Apify account.
How do I find tenders in my sector?
Use CPV codes in cpvCodes (a top-level code such as 72000000 for IT services includes all its sub-categories), keywords in any language, or both. Search CPV codes here.
Can I see who won past contracts?
Yes. Set noticeTypes to award to get contract award notices with the buyer and, when published, the value. Useful for pricing bids and sizing competitors.
How do I get a daily tender alert?
Turn on onlyNewNotices, name the search with monitoringList and schedule the Actor daily. Send results to email, Slack or a spreadsheet with Apify integrations.
How much does it cost?
$3.50 per 1,000 notices, with no monthly fee, and you can set a maximum charge per run.
Support
Found a problem or want a field added? Open an issue on the Actor's Issues tab.