Skip to content
Data
Skill

/eu-ted-procurement

Search EU public-procurement notices for free via the official TED (Tenders Electronic Daily) Search API - find who won an EU public contract, which above-threshold tenders a company has been awarded, contract-award notices with the winning contractor + value, and open tenders

From plugin
getregdata
644 skills1 MCP
Install
$ npx -y skills add Nolpak14/getregdata --skill eu-ted-procurement --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/eu-ted-procurement

Context preview

The summary Claude sees to decide when to auto-load this skill.

Search EU public-procurement notices for free via the official TED (Tenders Electronic Daily) Search API - find who won an EU public contract, which above-threshold tenders a company has been awarded, contract-award notices with the winning contractor + value, and open tenders

SKILL.md

eu-ted-procurement.SKILL.md
name: eu-ted-procurement
description: "Search EU public-procurement notices for free via the official TED (Tenders Electronic Daily) Search API - find who won an EU public contract, which above-threshold tenders a company has been awarded, contract-award notices with the winning contractor + value, and open tenders by CPV code, buyer, or country. Use for KYB / due-diligence credibility signals (which EU public contracts has this company won) and for government-buyer lead generation. Trigger on: 'EU tenders', 'TED', 'Tenders Electronic Daily', 'public procurement', 'contract awards', 'who won an EU contract', 'EU public contract search', 'find government tenders', 'contract-award notice', 'which tenders did this company win', 'CPV code search'. TED is free and keyless for published notices; to resolve the winning company it routes to the free registry skills and the paid regdata actors."
metadata:
  version: 1.0.0
  author: regdata
  tags:
    - ted
    - tenders
    - procurement
    - contract-awards
    - eu
    - public-sector
    - cpv
    - kyb
    - due-diligence
    - lead-gen
    - free-api
    - government-registry
  triggers:
    - "search EU public tenders"
    - "TED procurement lookup"
    - "who won an EU public contract"
    - "which contracts has this company won"
    - "contract-award notice search"
    - "find open tenders by CPV code"
    - "EU procurement due diligence"
    - "government-buyer lead generation"
    - "Tenders Electronic Daily search"

eu-ted-procurement

Free, official EU public-procurement data from the TED (Tenders Electronic Daily) Search API - the EU's supplement journal of above-threshold public tenders. This skill needs no paid actor, no Apify token, and no API key: the Search API for **published** notices is fully open. Use it to see which EU public contracts a company has won (a due-diligence credibility signal) and to mine government buyers for lead generation, then route to the registry skills to resolve the winning company.

Persona

You are a KYB / due-diligence analyst and lead-gen researcher working the public-sector angle. You search TED to answer two questions: *which above-threshold EU public contracts has this company won* (a legitimacy and track-record signal), and *which public buyers are awarding contracts in this CPV category* (a warm government-buyer list). You read award notices, not just tender notices, because the award carries the winner.

What this gives you (for free)

  • **Notice search** - full-text and field-based expert search across every published TED notice, filterable by CPV classification, buyer, winning organisation, country, publication date, and notice type.
  • **Contract-award notices** - the KYB-useful payload: the winning contractor's name + country, the awarded value, the buyer, and the CPV of what was bought.
  • **Contract (tender) notices** - open above-threshold tenders with buyer, CPV, estimated value, and submission deadline - the lead-gen and bid-tracking payload.
  • **Notice detail** - the full notice retrieved by publication number in XML, PDF, or HTML.

Licence: procurement notices are freely reusable, commercial or non-commercial, under Commission Decision 2011/833/EU; editorial content is CC BY 4.0 (attribution). Read-only.

Authentication

None for published notices - no key, no registration. Only the unpublished-notice endpoints require an EU-Login key; this skill does not use them. Respect the per-IP fair-use limits: roughly **700 HTTP requests/min**, **600 downloads / 6 min**, **3 concurrent connections**. A single expert query can return up to **15,000 notices** via pagination at **250 per page**.

curl -X POST "https://api.ted.europa.eu/v3/notices/search" \
  -H "Content-Type: application/json" \
  -d '{"query":"notice-type=\"contract-award\" AND organisation-name=\"ACME\"",
       "fields":["publication-number","notice-type","buyer-name","organisation-name"],
       "page":1,"limit":50}'

Before starting

Ask the user for whichever is missing:

  • **Which lane** - the *winner* lane (which contracts a named company has won -> filter to award notices by `organisation-name`) or the *buyer / open-tender* lane (who is buying in a CPV category -> filter by `classification-cpv` + `place-of-performance`).
  • **The identifier** - a company name (the contractor/winner), a CPV code, a buyer name, and/or a country + date window to keep result sets under the 15k cap.

API reference

Base URL: `https://api.ted.europa.eu` - docs `https://docs.ted.europa.eu/api/latest/` - Swagger `https://api.ted.europa.eu/swagger-ui/index.html` - portal `https://developer.ted.europa.eu`

| # | Purpose | Method + path | Notes | |---|---|---|---| | 1 | Search notices | `POST /v3/notices/search` | JSON body: `query` (expert-search string), `fields` (array), `page`, `limit` (<=250), `scope` | | 2 | Get one notice | `GET ted.europa.eu/en/notice/{publication-number}/{format}` | `{format}` = `xml`, `pdf`, or `html` |

**Expert-query syntax is field-based.** Filter fields you paste into `query` include: `classification-cpv` (CPV code), `buyer-name`, `organisation-name` (the winner/contractor), `place-of-performance` (country), `publication-date`, and `notice-type` (e.g. `contract-award`). The exact field IDs come from TED's field-list resource - learn them there rather than guessing.

**Build the query in the UI, paste it into the API.** An expert query composed in the TED website's expert-search builder pastes straight into the `query` field of the API body - the syntax is identical. This is the reliable way to get a valid query without memorising every field ID.

# Winner lane: contract-award notices won by a named company
curl -X POST "https://api.ted.europa.eu/v3/notices/search" \
  -H "Content-Type: application/json" \
  -d '{"query":"notice-type=\"contract-award\" AND organisation-name=\"COMPANY NAME\"",
       "fields":["publication-number","buyer-name","organisation-name","classificat
Read more
Ships withgetregdata

Installable agent skills - packaged, repeatable workflows - for KYC/AML, credit-risk, due-diligence and B2B research over public business registry data.

Get the whole plugin
Stats
6
Stars
0
Forks
Maintained
Maintenance
JavaScript
Language
MIT
License
1mo ago
Last commit
4mo ago
Created

Repo: Nolpak14/getregdata

Other skills on getregdata.