EU and UK public tenders from TED, Find a Tender and Contracts Finder in one feed
The EU and the UK publish public-sector tenders through three open APIs: TED (Tenders Electronic Daily) for EU and EEA notices, and Find a Tender and Contracts Finder for UK notices. None of them needs an API key. Each has its own format and limits, and the two UK services can carry the same notice. This page shows how to query TED in Python, what each source holds, and how to merge them without counting a notice twice.
This guide is independent and is not an official EU or UK government resource.
What does each source hold?
| Source | What it holds | API |
|---|---|---|
| TED | Notices published in the Supplement to the Official Journal of the EU | TED Search API v3, POST https://api.ted.europa.eu/v3/notices/search |
| Find a Tender | UK above-threshold notices and Procurement Act 2023 notices | OCDS release packages, /api/1.0/ocdsReleasePackages |
| Contracts Finder | UK lower-value opportunities and awards (England and some UK-wide buyers) | OCDS search, /Published/Notices/OCDS/Search |
Public Contracts Scotland, Sell2Wales and eTendersNI are separate portals. Their notices only show up in these three when the buyer also publishes to Find a Tender or Contracts Finder.
How do I search TED in Python?
TED's search API takes an expert query and needs no key. This asks for competition notices (open tenders) under CPV code 72000000 (IT services) published since 29 October 2026:
import json, urllib.request
body = {
"query": "PD>=20261029 AND form-type IN (competition) AND classification-cpv IN (72000000)",
"fields": ["publication-number", "buyer-country", "title-proc"],
"limit": 5,
"paginationMode": "ITERATION",
}
req = urllib.request.Request("https://api.ted.europa.eu/v3/notices/search",
data=json.dumps(body).encode(), headers={"Content-Type": "application/json"})
with urllib.request.urlopen(req, timeout=60) as r:
data = json.load(r)
print(data.get("totalNoticeCount"), "notices")
for n in data["notices"]:
print(n["publication-number"], n.get("buyer-country"))
On 1 November 2026 it printed 257 notices, then five publication numbers with buyer countries such as ['POL'] and ['ITA'].
What trips people up?
- TED codes and languages. Buyer countries come back as three-letter codes (
POL, notPL), and titles come keyed by a three-letter language code (pol,ita), in the language the buyer published. - Pagination. Use
paginationMode: "ITERATION"and pass backiterationNextTokenso large result sets aren't capped. - Rate limits. TED's fair-use policy allows 700 requests a minute. Find a Tender sends a
Retry-Afterheader on 429 and 503 responses, and it can be slow. If Contracts Finder tells you to wait 5 minutes, stop and come back later. - Repeat releases. The UK services publish a new release each time a notice is updated. Keep only the latest release per notice and stage.
- Cross-posted notices. The same notice can appear on both Find a Tender and Contracts Finder.
- Values. Many TED notices publish no estimated value, so a value filter drops them. To compare values across currencies, convert to EUR (for example at the European Central Bank's euro reference rates) and keep the original amount and currency.
Can I reuse the data?
- TED: unless otherwise noted, notices in the Supplement to the Official Journal of the EU can be reused for commercial or non-commercial purposes under the Commission's reuse policy (Commission Decision 2011/833/EU). TED's own editorial content is CC BY 4.0.
- Find a Tender and Contracts Finder: contain public sector information licensed under the Open Government Licence v3.0. Departmental logos and crests aren't covered.
- Contact details: notices can include buyer contact emails and phone numbers. Use them for the tender itself, in line with the data protection rules that apply to you.
We built this
Disclosure: Your Evenings Ltd built and sells this. It's independent and isn't affiliated with or endorsed by the European Union, TED, Find a Tender or Contracts Finder. The Public Tenders API on Apify Store reads all three APIs live and returns one row format: buyer, CPV, NUTS/ITL region, value with a EUR conversion, deadline, lots and awards.
- Filters before you pay. CPV prefix, buyer country, region, value in EUR, deadline, SME suitability, buyer and keywords are applied before anything is charged.
- Scheduled alerts. In monitor mode, a daily scheduled run returns only notices that are new, amended, awarded or cancelled since the last run.
- One row per notice. Repeat releases are collapsed, and a notice on both UK services comes back once, as the Find a Tender row.
- Award rows carry Companies House numbers when the UK notice publishes one.
- Free status rows when a source fails, is empty or was cut short, so a quiet day isn't mistaken for a broken feed.
Pricing: $0.004 per notice row, plus $0.01 per alert run that returns at least one notice. On the Scale plan they're $0.0036 and $0.009, and on Business and above $0.0032 and $0.008. Status rows, filtered-out notices and duplicates are free. A daily alert with 15 new matches costs 15 × $0.004 + $0.01 = $0.07 a day, plus a small Actor start fee.
Want the tenders found and shortlisted for you? See Tender Desk.
FAQ
Do I need an API key for TED, Find a Tender or Contracts Finder? No. All three publish their notices through open APIs that need no key.
Why do I get fewer TED results when I filter by value? Many TED notices don't publish an estimated value, so a value filter leaves them out.
Does this cover Scotland, Wales and Northern Ireland? Only notices those buyers publish to Find a Tender or Contracts Finder. Public Contracts Scotland, Sell2Wales and eTendersNI are separate portals.
Can I reuse TED and UK tender data commercially? TED notices can be reused under Commission Decision 2011/833/EU. Find a Tender and Contracts Finder data is under the Open Government Licence v3.0. Keep the attribution lines when you republish.
Product names and logos belong to their owners. Your Evenings Ltd is not affiliated with or endorsed by them. Tender data from TED, Find a Tender and Contracts Finder. Contains public sector information licensed under the Open Government Licence v3.0. Your Evenings Ltd is not affiliated with or endorsed by the European Union, TED, Find a Tender or Contracts Finder.
