EU Public Tenders (TED) avatar

EU Public Tenders (TED)

Pricing

from $4.00 / 1,000 notice records

Go to Apify Store
EU Public Tenders (TED)

EU Public Tenders (TED)

Search EU public procurement notices on TED by keyword, CPV code, buyer country, date, notice type and value, with optional lot-level detail and award data.

Pricing

from $4.00 / 1,000 notice records

Rating

0.0

(0)

Developer

Chris O'Byrne

Chris O'Byrne

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Search public procurement notices published on TED (Tenders Electronic Daily), the official EU journal for public tenders, and get clean structured records you can filter, export and schedule. The Actor uses the official, anonymous TED Search API. It needs no login, no API key and no proxy.

What does EU Public Tenders (TED) do?

You enter keywords, CPV codes, buyer countries, a publication window, a deadline date, notice types or a minimum value. The Actor sends one expert-search query to TED, pages through the results politely, and returns one dataset item per notice with:

  • publication number, publication date, notice type and procedure type
  • title and a short description (English when the notice provides it)
  • buyer organization name, city and country
  • CPV codes
  • estimated value and currency, as published
  • tender submission deadline (or the deadline to request participation for restricted and negotiated procedures)
  • award data on result notices: result value, winning organizations, winner countries, lots awarded
  • links to the notice page (HTML), the PDF and the XML on TED
  • optional lot-level detail: lot id, title, description, value, deadline and per-lot award status

Who is it for?

Bid and sales teams who track tenders in their field, consultants and agencies who monitor buyers, market researchers who size public spending, journalists and transparency groups, and developers who want TED data in a simple JSON or CSV feed without learning the TED query syntax.

How to use it

  1. Open the Actor and keep the example input (keyword "software", last 7 days, 20 notices) or change it.
  2. Add filters. All filters are combined with AND. Several keywords are combined with OR by default, or with AND if you choose "All keywords".
  3. Click Start. Results appear in the Output tab and can be downloaded as JSON, CSV, Excel or HTML, or read through the Apify API.
  4. Use a schedule to run the same search every day or week.

Input

FieldMeaning
keywordsWords or exact phrases searched in the notice text
keywordMatchany (OR) or all (AND)
cpvCodesCPV codes, 2 to 8 digits. A code also matches the more specific codes below it
buyerCountriesBuyer country as ISO code (DEU, DE) or English name
noticeTypesFor example cn-standard (contract notice) or can-standard (contract award notice)
minValue and valueCurrencyMinimum estimated value as published, optional currency code. No currency conversion is done
publishedWithinDays or publishedSincePublication window
deadlineAfterTender deadline (or request-to-participate deadline) on or after this date
includeLotsAdd lot-level detail
maxResultsNotices to return, 1 to 5,000. The default is 20

Output example

{
"publicationNumber": "729917-2026",
"publicationDate": "2026-10-21",
"noticeType": "cn-standard",
"noticeForm": "competition",
"procedureType": "neg-w-call",
"procedureTypeLabel": "Negotiated procedure with prior call for competition",
"contractNature": ["services"],
"title": "AeroCore FIDS",
"titleLanguage": "eng",
"buyerName": "Swedavia AB",
"buyerCity": "Stockholm Arlanda",
"buyerCountry": "SWE",
"buyerCountryName": "Sweden",
"cpvCodes": ["72000000", "72300000", "48000000"],
"mainCpv": "72000000",
"estimatedValue": 30000000,
"estimatedValueCurrency": "SEK",
"valueSource": "procedure",
"lotCount": 1,
"award": null,
"noticeUrl": "https://ted.europa.eu/en/notice/-/detail/729917-2026",
"pdfUrl": "https://ted.europa.eu/en/notice/729917-2026/pdf",
"xmlUrl": "https://ted.europa.eu/en/notice/729917-2026/xml"
}

Result notices carry an award object with resultValue, winnerNames, winnerCountries, lotsAwarded and lotsWithoutWinner. With lot-level detail switched on, each item also has a lots list, and the award object has lotResults.

Pricing

The Actor uses pay-per-event pricing. You pay only for notices that are returned, plus the small platform start fee. A search that matches nothing charges no notice events.

EventPriceWhen it is charged
Notice record$0.004Once for each notice returned
Lot-level extraction$0.01Once for each returned notice that has lot detail, only when "Include lot-level detail" is on
Actor start$0.00005Once per run, charged by the platform

Example: 100 notices without lots cost $0.40 plus the start fee. 100 notices with lots cost up to $1.40. You can set a maximum cost per run in the run options and the Actor stops when that limit is reached.

Data source, licence and attribution

All data comes from the TED Search API at api.ted.europa.eu, which is open to the public without authentication. According to the TED legal notice, procurement notices can be freely reused for commercial or non-commercial purposes, and TED editorial content is licensed under CC BY 4.0. Please credit the source as "TED, Publications Office of the European Union" and mention any changes you make. The Actor keeps to the fair usage limits TED publishes (about 700 HTTP requests per minute) by sending one request at a time with a pause between requests, which stays well under 100 requests per minute.

This Actor is not affiliated with, endorsed by or sponsored by the European Union, the Publications Office of the European Union or TED. Names are used only to describe the data source.

Privacy

The Actor returns buyer organization names, cities and countries. It does not extract contact persons, emails or phone numbers. Winner names are organization names as published; when TED flags a winner as a natural person, the names for that notice are withheld and winnerNamesWithheld is set to true.

FAQ

Do I need a TED account or API key? No. The search endpoint is anonymous.

How current is the data? The Actor returns what the TED Search API returns at the moment of the run. A notice can take some time to appear after the buyer sends it.

Why is the estimated value empty? Many notices do not publish a value. The value is reported as published, in the notice currency, with no conversion.

Why are some lot values empty? TED sometimes returns fewer value entries than lots. In that case the Actor leaves per-lot values empty instead of guessing, and adds a lotValuesNote.

Which language is the title in? English when the buyer provided it, otherwise the first language in the notice. The language code is in titleLanguage.

Can I get the full notice text or attachments? The Actor returns links to the notice HTML, PDF and XML. It does not download them, because the TED website is protected by an access check that the Actor does not try to get around.

Limitations

  • A single search returns at most 15,000 notices because of the TED page-number limit, and this Actor caps one run at 5,000. Narrow the date range to go further.
  • Descriptions are shortened to 600 characters, lot descriptions to 400.
  • The deadline is the earliest one in the notice. Per-lot deadlines appear in lot-level detail.
  • The list of countries in the picker covers Europe and neighbours; other ISO codes can be typed in.

Support

If something looks wrong or you need another field, open an issue in the Issues tab of this Actor with the run link and the input you used.