Hoppa till innehållet
← All data tools

EU tenders from TED

Returns public procurement notices from TED (Tenders Electronic Daily) for all 27 EU countries plus Norway, Iceland and Liechtenstein, one row per notice with buyer, estimated value, currency, deadline, CPV codes and a link to the full notice.

Open in Apify Store

TED is where every public buyer in the EU has to publish tenders above the EU thresholds. The site is built for reading one notice at a time. This tool calls the official TED Search API and gives you the notices as rows you can filter, sort and load into a spreadsheet or a CRM.

Filter on buyer country, publication date, CPV code, keyword and notice type (open competitions, planned procurements or contract awards). A run with empty input returns the 50 newest open competitions from all 30 countries published in the last seven days.

Sample from a real run

3 rows (selected fields) from run NjC5PO7cD0caQvbpa on 6 October 2026, exactly as the tool returned them.

idtitlebuyercountryestimatedValuecurrencydeadlineDateprocedureTypecontractNaturemainCpvCodeurl
689138-2026Assurance multirisques du patrimoine de la ville de LyonVille de LyonFR8386747EUR2026-10-16openservices66510000ted.europa.eu/en/notice/-/detail/689138-2026
689136-2026Accord-cadre pour l'acquisition de fournitures de consommables de fixation, maintenance et outillageVille de Concarneau; Concarneau Cornouaille AgglomérationFR520000EUR2026-11-06opensupplies37411140ted.europa.eu/en/notice/-/detail/689136-2026
689135-2026Ostraha objektu RMU Žerotínovo náměstí 9, Brno a ostraha areálu RMU Komenského náměstí 2, Brno pro období 2027 - 2029Masarykova univerzitaCZ6500000CZK2026-11-06openservices79713000ted.europa.eu/en/notice/-/detail/689135-2026

Fields

Every row has these fields. Field names are stable between versions.

FieldWhat it holds
idTED publication number, for example 681455-2026
titleTitle of the procurement as published by the buyer
titleLanguageLanguage of the title (ISO 639-2, for example swe, eng)
buyerName of the contracting authority. Joint procurements list all buyers separated by ;
buyerCityCity of the (first) buyer
countryCountry of the (first) buyer, ISO 3166 alpha-2
countriesAll buyer countries
cpvCodesAll CPV codes in the notice
mainCpvCodeMain CPV code of the procedure
estimatedValueEstimated value excluding VAT, or the sum of the lots when the total is missing and all lots use the same currency. null if the buyer did not publish a value
currencyCurrency of estimatedValue, for example EUR, SEK, PLN, CZK, NOK
publicationDatePublication date in TED, YYYY-MM-DD
deadlineEarliest deadline for tenders across the lots, ISO 8601 with time zone. null for notices without a deadline (awards, most prior information notices)
deadlineDateDate part of deadline
noticeTypeeForms notice subtype, for example cn-standard
noticeTypeGroupcompetition, planning or result
procedureTypeFor example open, restricted, neg-w-call, comp-dial
contractNatureservices, supplies or works
urlLink to the full notice on ted.europa.eu
sourceName of the data source, for attribution: TED, Publications Office of the European Union
licenseName of the license the data is published under, CC BY 4.0 / Commission Decision 2011/833/EU

Input example

Paste it into the JSON tab of the actor in Apify Console, or send it to the Apify API.

{
  "onlyNew": false,
  "cpvCodes": [
    "72000000"
  ],
  "countries": [
    "SE",
    "NO",
    "DK",
    "FI"
  ],
  "maxResults": 50,
  "noticeTypes": [
    "competition"
  ]
}

What people use it for

  • Tender alerts. A daily run with your countries and CPV codes and onlyNew set to true gives you only the calls published since yesterday.
  • Lead lists of public buyers. Contract awards (result) show which authorities buy what you sell and when the contracts were signed, which tells you roughly when they come up again.
  • Market analysis. Count notices and summed estimated values per country, CPV category or buyer over a year to see where the volume is.

Price

4 USD per 1 000 notices, plus Apify platform usage.

A run with the default input returns at most 50 notices, so it costs at most 0.20 USD in results. maxResults caps every run, so you always know the highest possible cost. Platform usage for a run of this size is a fraction of a cent.

Run it on a schedule

Set onlyNew to true and add the actor to a schedule in Apify Console (for example the cron expression 0 7 * * * for 07:00 every day). The actor remembers what it has already delivered for the same input, in a named key-value store in your own Apify account (nightwave-state-eu-public-procurement), and each run returns and charges only what is new. The first run returns everything in the selection. A run with nothing new finishes with 0 rows and costs nothing beyond platform usage.

Source and license

The data comes from the public TED Search API, run by the Publications Office of the European Union. No API key is needed.

Reuse of TED data is allowed under Commission Decision 2011/833/EU, and the TED datasets on data.europa.eu are published under CC BY 4.0. Credit "TED, Publications Office of the European Union" when you publish the data. Every row carries source and license for that purpose.

Try it

The tool runs on Apify. Apify handles your account, the runs and the payment, and you can try it with the input above before you schedule anything.

Open in Apify Store

Built and maintained by Nightwave AB. Questions or bugs: kontakt@nightwave.se