EU Tender Aggregator (TED) — CPV & Country Filtered avatar

EU Tender Aggregator (TED) — CPV & Country Filtered

Pricing

from $3.00 / 1,000 results

Go to Apify Store
EU Tender Aggregator (TED) — CPV & Country Filtered

EU Tender Aggregator (TED) — CPV & Country Filtered

Official EU public procurement notices (TED) as clean, unified JSON. Filter by CPV code, country and date. Keyless official open data.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Onur Hadzhaoglu

Onur Hadzhaoglu

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Turn the EU's official public-procurement feed into clean, unified JSON you can actually use. This actor queries TED (Tenders Electronic Daily) — the official EU procurement journal — and returns notices filtered by CPV code, country and publication date, newest first, in one consistent schema.

No API key, no scraping tricks, no personal data — TED's search API is official, public and keyless. This actor adds the part TED doesn't: normalization. TED's raw response is deeply nested and multi-lingual; this actor flattens each notice to a single, predictable record.

What you get — one record per notice

{
"noticeNumber": "557198-2026",
"title": "Netherlands – Catering services – Event Catering",
"buyerName": "Gemeente Den Haag",
"country": "NLD",
"cpv": "55520000",
"noticeType": "can-standard",
"publicationDate": "2026-08-12",
"deadlineDate": null,
"totalValue": 1200000,
"tenderUrl": "https://ted.europa.eu/en/notice/-/detail/557198-2026",
"source": "TED"
}

Input

FieldTypeExampleMeaning
cpvCodeslist["55000000"]CPV sector codes (e.g. 55 = catering/hospitality). Empty = all sectors.
countrieslist["NLD","DEU"]Buyer country, ISO alpha-3. Empty = all EU.
publishedAfterstring"20260101"Only notices on/after this date (YYYYMMDD).
maxResultsint50Max notices, newest first (1–250).

Who this is for

  • Bid / tender managers tracking new opportunities in a sector.
  • Exporters (e.g. Turkish or non-EU suppliers) watching EU tenders by CPV.
  • GovTech / consultancies that need procurement data in a clean schema.
  • Catering / facility / construction firms watching their CPV vertical.

Why not just use TED directly?

TED's raw API returns nested, multi-lingual objects (24 languages per title, link maps per format). This actor picks the right language, flattens the structure, and gives you a stable schema that drops straight into a spreadsheet, CRM or database.

Pricing (pay-per-event)

Billed per returned notice (result event). Suggested price point ~$2–4 per 1,000 records — set in the Apify Console when publishing.

Roadmap

  • sources/ekap.py — Turkey (EKAP) adapter
  • sources/tenderned.py — Netherlands (TenderNed) adapter
  • Company enrichment join (buyer → registry data)

Uses only official, public, already-published procurement notices from TED's open API. No login-gated data, no personal data, no ToS circumvention.


Developer notes (running & testing)

The fetch + normalize core is in src/ted_source.py and has no dependency on the Apify SDK — you can prove it works standalone:

python -m src.ted_source
# → prints the query, total matching count, and the first normalized records

The actor wrapper (src/main.py) adds Apify input handling, dataset push and per-event charging. To run as an actor locally you need the Apify CLI + login:

$apify run

To publish:

$apify push