TED Tender Notices Search (unofficial) – open calls & awards avatar

TED Tender Notices Search (unofficial) – open calls & awards

Pricing

Pay per usage

Go to Apify Store
TED Tender Notices Search (unofficial) – open calls & awards

TED Tender Notices Search (unofficial) – open calls & awards

Pricing

Pay per usage

Rating

0.0

(0)

Developer

licensed pipe

licensed pipe

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Security

Limited permissions

Share

TED Tender Notices Search (unofficial) – v0.3

Publisher: Licensed Pipe · Contact: licensedpipe@gmail.com

Search the EU's official public procurement journal (TED – Tenders Electronic Daily) and get clean, flat rows for open calls and contract awards: publication number, notice URL, title (original language + English where present), buyer name/country, CPV codes, contract nature, procedure type, estimated value, submission deadline – and for awards: awarded value + currency, winner country and size class (micro/small/SME/large), number of tenders received, contract conclusion date, winner-selection status.

Unofficial. This actor is an independent third-party tool. It is not provided, operated, endorsed or supported by the European Union, the European Commission or the Publications Office of the European Union. No EU emblem or TED/SIMAP logo is used. Data is shown as published by the buyers; it can be wrong, incomplete or outdated and is not legal, financial or procurement advice. Only the notice on ted.europa.eu is authoritative (see noticeUrl).

Permitted use / no profiling. Do not use this data (or data derived from it) to profile, score, track or target natural persons. The actor is meant for organisation-level procurement monitoring only. Output fields title, titleEnglish and buyerName may in rare cases contain a person's name; do not use them for profiling or direct marketing to individuals.

Built for procurement monitoring, bid-alert pipelines and AI agents (small, stable JSON schema; usable via the Apify MCP server).

Data source, licence and required attribution

itemvalue
SourceTED Search API v3, POST https://api.ted.europa.eu/v3/notices/search (official, anonymous, no key)
PublisherPublications Office of the European Union (OP)
LicenceOP/Commission reuse policy, Commission Decision 2011/833/EU (dataset licence entry "COM_REUSE" on data.europa.eu, ted-1)
Commercial reuseYes – Art. 4: documents "shall be available for reuse for commercial or non-commercial purposes ... without charge ... without the need to make an individual application"
ConditionsArt. 6(2): may include acknowledging the source, not distorting the original meaning, non-liability of the Commission
Attribution (required)"Source: TED (Tenders Electronic Daily), Publications Office of the European Union, https://ted.europa.eu. Reused under Commission Decision 2011/833/EU. Data restructured by this actor; not an official EU product." – shipped in each row's source field and in the RUN_SUMMARY record.
TED legal noticehttps://ted.europa.eu/en/legal-notice – "procurement notices published in the Supplement to the Official Journal ... can be freely reused, for commercial or non-commercial purposes"; editorial content of the SIMAP sites is CC BY 4.0; additional rights may have to be cleared where content depicts identifiable private individuals or contains third-party works; TED/SIMAP logos may not be used without consent (read 2026-11-02)

Personal data / compliance design

  • No free-text descriptions. Buyer-authored description texts may carry third-party rights (Decision 2011/833/EU Art. 2(2)(b)); they are neither requested from the API nor output (removed in v0.3). Only structured fields and the notice title are returned; full text is one click away via noticeUrl.
  • Buyer = contracting authority (organisation). Contact persons, e-mails, phone numbers: not requested (TED notices contain them; the Publications Office's privacy statement for "TED notices" lists contact persons and, for awards, tenderers that may be natural persons).
  • Residual risk (read before use): the title, titleEnglish and buyerName fields are free text written by the buyer. In rare cases they can contain the name of a natural person (e.g. a private buyer, or a person named in a title). The actor cannot reliably detect this. Under Apify's Standard Actor Contract you, the user, are the data controller of any personal data in the output and the actor author acts only as your processor on your instructions; you need your own lawful basis, must honour data-subject requests and should not store notices longer than needed (TED itself removes notices from the public site after 10 years). If you are not sure, drop those fields in your pipeline.
  • The actor writes no raw API responses to logs or storage; the dataset contains only the fields listed above and RUN_SUMMARY contains the query you entered.
  • Winner names are deliberately not collected (sole traders would make them personal data under GDPR); only country, size class and aggregate values are returned. Winner details remain one click away through the noticeUrl.
  • No scraping of HTML pages; official API only. Not a legal/tender-advice service; values are as published and may be wrong or missing.

Politeness and hard limits

TED publishes no rate limit for the anonymous Search API, so the actor is deliberately conservative: one request at a time, at least 1 s between request starts (max ~1 request/s per run), random 0–3 s start jitter, hard cap 1000 notices (max 10 requests) per run, max 3 retries with exponential backoff + jitter, Retry-After honoured (numeric and HTTP-date; if the server asks for more than 60 s the run aborts instead of waiting/hammering), immediate stop on HTTP 202/403 (CDN/WAF challenge) and when your spending limit is reached. Identifying User-Agent with run id. api.ted.europa.eu/robots.txt returns 404 (no restrictions). Please do not start many parallel runs; for bigger exports use TED's own bulk download.

Input (see .actor/input_schema.json)

fieldmeaning
keywordsfull-text keywords (OR)
cpvPrefixesCPV code prefixes (OR), e.g. 72 IT services
countriesbuyer country, ISO3 (DEU, FRA, FIN ...)
publishedFrom / publishedTopublication date window (default: last 7 days)
noticeKindcontract (open calls) / award / all
deadlineAfteronly tenders with submission deadline on/after
minEstimatedValueEurminimum estimated value
maxResultscap, default 100, max 1000 (each result billed)

Example output item (award)

{"publicationNumber":"718666-2026","noticeUrl":"https://ted.europa.eu/en/notice/-/detail/718666-2026","publicationDate":"2026-10-19","noticeType":"can-standard","title":"...","buyerName":"Miejskie Przedsiębiorstwo Komunikacyjne – Łódź ...","buyerCountry":"POL","cpvCodes":["50316000"],"contractNature":"services","procedureType":"open","awardedValue":3012300,"awardedCurrency":"PLN","winnerSelectionStatus":["selec-w"],"winnerCountries":["POL"],"winnerSizes":["large"],"contractConclusionDates":["2026-09-29"],"tendersReceived":2,"source":"TED / Publications Office of the EU (Decision 2011/833/EU)"}

Local run (no account needed)

npm install
mkdir -p storage/key_value_stores/default
echo '{"countries":["FIN"],"maxResults":50}' > storage/key_value_stores/default/INPUT.json
APIFY_LOCAL_STORAGE_DIR=./storage node main.js

Measured on 2026-11-02 (2 vCPU / 8 GB Debian server, Node 24)

runrowswallCPU (user+sys)peak RSS
open calls, published since 2026-10-19 (v0.3, no descriptions; re-test 2.11. iltapäivä)100018.5 s (API latency varies 14–50 s)2.5 s139 MB
award notices published since 2026-10-19 (v0.3 re-test)100014.6 s2.7 s143 MB
Open calls (1000, unique, no description field): title/buyer/CPV 100 %; submissionDeadline 89 %; estimatedValue 48 %. Award data quality (re-test, 1000 unique rows): title 100 %; buyerName 100 %; buyerCountry 100 %; source 100 %; awardedValue 89 %; awardedCurrency 93 %; winnerCountries 90 %; winnerSizes 88 %; contractConclusionDates 89 %; tendersReceived 85 %. 17 313 award notices matched that date window.

Known limitations

  • Multi-lot notices: values come from the notice-level total (fallback lot-level sum); winner fields are de-duplicated lists, not per-lot rows.
  • tendersReceived sums the TED "tenders" statistic across lots. Sentinel value -1 is dropped.
  • Per-query cap in TED API: 15 000 notices; this actor returns at most 1000 per run: split by date window and run the windows one after another.
  • Not legal advice; the names "TED" and "Tenders Electronic Daily" are used only to describe the data source (nominative use).