free EU tenders API for AI agents, TED API no key
The EU Publications Office’s official, free Search API over Tenders Electronic Daily (TED): one POST with an expert query returns published procurement notices from all EU member states as JSON. No key; the TED fair-usage policy allows 700 HTTP requests a minute.
Verified factsChecked 2026-10-29
| Price | Free. The Search API is open to the general public, with no paid tier.3 [Verified 2026-10-29] |
| API key / auth | None for searching or retrieving published notices; a key is needed only for endpoints that handle unpublished notices. Our keyless POST on 2026-10-29 returned HTTP 200.1 [Verified 2026-10-29] |
| Rate limit | TED’s fair-usage policy: 700 HTTP requests in the last minute, 600 notice views or downloads in under 6 minutes from one IP, and 3 concurrent package downloads. Our responses carried no rate-limit headers.4 [Verified 2026-10-29] |
| Result caps | Up to 250 notices and 10,000 fields (notices × fields) per page. Page-number mode stops at 15,000 notices per query; ITERATION mode with a token has no total cap. Our limit=251 request returned 400 SEARCH_EXCEEDS_MAX_LIMIT.3 [Verified 2026-10-29] |
| License / terms | Unless otherwise noted, notices published in the OJ S can be freely reused for commercial or non-commercial purposes (Commission reuse decision of 12 December 2011). Site editorial content is CC BY 4.0 and metadata CC0; the TED logo needs permission.5 [Verified 2026-10-29] |
| Version status | v3 is current at the unified api.ted.europa.eu gateway; v2 stays supported until a v4 ships, with advance notice promised.1 [Verified 2026-10-29] |
| Query rules | query and fields are required; scope is LATEST (current OJ S issue), ACTIVE or ALL (default); checkQuerySyntax=true validates a query without running it.3 [Verified 2026-10-29] |
FeaturesChecked 2026-10-29
| Capability | Value |
|---|---|
| StatusOne unified version for all TED APIs at api.ted.europa.eu; v4 plans will be announced in advance. | v3 current; v2 supported until v41 [Verified 2026-10-29 on https://docs.ted.europa.eu/api/latest/index.html] |
| API key requiredNo key. Keyless POST /v3/notices/search returned HTTP 200 on 2026-10-29; keys are only for unpublished-notice endpoints. | No2 [Verified 2026-10-29 by test request to https://api.ted.europa.eu/v3/notices/search] |
| Free tierFree. Open to the general public with no paid tier. | Yes3 [Verified 2026-10-29 on https://api.ted.europa.eu/api-v3.yaml] |
| Rate limit600 notice views or downloads per 6 minutes per IP; 3 concurrent package downloads. 250 notices per page, 15,000 per query in page mode. No rate-limit headers in our responses. | 700 requests/min (fair use)4 [Verified 2026-10-29 on https://ted.europa.eu/en/news/fair-usage-policy-on-ted] |
| Official MCP serverNo official MCP server from the Publications Office; an independent one at ted-mcp.eu (riigihanked.eu) answered keyless search calls in our test. | Not published1 [Not published by vendor: checked 2026-10-29 on https://docs.ted.europa.eu/api/latest/index.html] |
| Official SDKNo official client SDK for search; the eForms SDK is for building and validating notices. Swagger spec at api.ted.europa.eu/swagger. | Not published1 [Not published by vendor: checked 2026-10-29 on https://docs.ted.europa.eu/api/latest/index.html] |
| Data license / termsNotices can be reused freely unless otherwise noted; site text CC BY 4.0, metadata CC0; TED logo needs consent. | Free reuse (EU reuse policy)5 [Verified 2026-10-29 on https://ted.europa.eu/en/legal-notice] |
| Commercial use allowedAllowed. The legal notice says OJ S procurement notices can be freely reused for commercial or non-commercial purposes. | Yes5 [Verified 2026-10-29 on https://ted.europa.eu/en/legal-notice] |
| CORS / browser useNo CORS header. Preflight and POST with a third-party Origin on 2026-10-29 returned no Access-Control-Allow-Origin. | No2 [Verified 2026-10-29 by test request to https://api.ted.europa.eu/v3/notices/search] |
| Freshness / coverageNotices appear on TED by 09:00 CET on their OJ S publication date; scope LATEST returns only the current issue. | Each OJ S issue; all EU member states1 [Verified 2026-10-29 on https://docs.ted.europa.eu/api/latest/index.html] |
What it does
Tenders Electronic Daily (TED) is the online version of the Supplement to the Official Journal of the EU (OJ S), where public buyers across the EU publish calls for tender, contract awards and related procurement notices. TED API v3 (api.ted.europa.eu) is run by the Publications Office. Everything that touches unpublished notices, such as submitting or validating, needs an API key from the TED Developer Portal, but the Search API over published notices is anonymous. An agent sends POST /v3/notices/search with an expert query (the same syntax as TED’s Expert Search page, for example classification-cpv=72000000 AND publication-date>=today(-7)) and a list of fields to return, and gets back matching notices with links to the HTML, PDF and XML versions in every EU language. Buyer names and titles come back as language-keyed objects, so an agent may need to pick a language or translate. There is no official MCP server; an independent operator runs one over the same data (see alternatives).
Working exampleRun 2026-10-29
curl -sS -X POST "https://api.ted.europa.eu/v3/notices/search" \
-H "Content-Type: application/json" \
-d '{"query":"classification-cpv=72000000 AND publication-date>=today(-7)",
"fields":["publication-number","notice-title","buyer-name","buyer-country","deadline-receipt-tender-date-lot"],
"limit":2}'Response (trimmed)
HTTP 200 (run 2026-10-29, no key; links and non-English titles trimmed)
{"totalNoticeCount":1416, "iterationNextToken":null, "timedOut":false,
"notices":[
{"publication-number":"730007-2026", "buyer-country":["ESP"],
"buyer-name":{"spa":["Consorci de Serveis Universitaris de Catalunya (CSUC)"]},
"notice-title":{"eng":"Spain – IT services: consulting, software development, Internet and support – ..."},
"links":{...}},
{"publication-number":"730047-2026", "buyer-country":["HUN"],
"buyer-name":{"hun":["Magyar Nemzeti Bank"]},
"deadline-receipt-tender-date-lot":["2026-11-24+02:00"],
"notice-title":{"eng":"Hungary – Software-related services – ..."},
"links":{...}}]}Agent setup
Prompt to give your agent
Use the TED Search API (POST https://api.ted.europa.eu/v3/notices/search, JSON body, no key). Find notices published in the last 7 days with CPV code 72000000 (IT services) from buyers in Germany, Austria or the Netherlands. Use the query "classification-cpv=72000000 AND publication-date>=today(-7) AND buyer-country IN (DEU AUT NLD)", fields publication-number, notice-title, buyer-name, buyer-country and deadline-receipt-tender-date-lot, limit 50. For each notice give the English title, the buyer, the country, the tender deadline (or "not stated") and the link https://ted.europa.eu/en/notice/-/detail/<publication-number>. Do not invent values, deadlines or eligibility rules that are not in the notice.Agent / MCP-style tool snippet
// Tool definition for Claude, OpenAI or any function-calling agent
{
"name": "ted_search",
"description": "Search published EU public procurement notices on TED (Tenders Electronic Daily). Read-only, no key. Uses TED expert query syntax.",
"input_schema": {
"type": "object",
"properties": {
"query": { "type": "string", "description": "Expert query, e.g. classification-cpv=72000000 AND buyer-country=FRA AND publication-date>=today(-7)" },
"fields": { "type": "array", "items": { "type": "string" }, "description": "e.g. publication-number, notice-title, buyer-name, deadline-receipt-tender-date-lot" },
"limit": { "type": "integer", "maximum": 250 },
"page": { "type": "integer", "minimum": 1 },
"scope": { "type": "string", "enum": ["LATEST", "ACTIVE", "ALL"] }
},
"required": ["query", "fields"]
}
}
// Implementation: POST https://api.ted.europa.eu/v3/notices/search with the input as the JSON bodyFit and safety
Good for
- Daily alerts for new EU tenders in your CPV codes and countries
- Listing a buyer’s past contract awards before you bid
- Feeding open calls for tender with deadlines into a bid-pipeline agent
Watch out
- Do not call it from browser code. Our preflight and POST with a third-party Origin on 2026-10-29 returned no Access-Control-Allow-Origin header, so call it from a server or agent runtime.
- Do not page past 15,000 results with page numbers. Switch to paginationMode ITERATION and pass iterationNextToken, or use TED’s daily and monthly bulk packages for full mirrors.
- Do not treat the API response as the legal text. TED says only the electronically signed notices in the OJ S are authentic; link users to the notice before they bid.
- Do not assume it covers every public contract. It returns notices published in the OJ S; tenders a buyer posts only on a national portal will not appear.
- Do not use the TED logo or imply endorsement. The legal notice says the logos need the Publications Office’s prior consent.
Alternatives
| TED MCP (ted-mcp.eu, third party) | Independent hosted MCP over the same notices by riigihanked.eu; search_notices and get_notice worked without a key in our 2026-10-29 test, while analytics and AI tools need a riigihanked.eu subscription. Not run by the EU. |
| SEC EDGAR API | Another free, keyless government API, for U.S. company filings instead of EU tenders. |
| FinancialFilings MCP | Company reports from 60 markets, useful for checking the suppliers that win European tenders. |
| NPPES NPI Registry API | A free, keyless U.S. government lookup API with similar plain-JSON ergonomics. |
FAQ
Does the TED API need an API key?
Not for search. The Search API (POST https://api.ted.europa.eu/v3/notices/search) and other endpoints for published notices are anonymous; only endpoints for submitting or validating unpublished notices need a key.
What is the TED API rate limit?
TED’s fair-usage policy allows 700 HTTP requests a minute and 600 notice views or downloads in under 6 minutes per IP. Each search page returns at most 250 notices.
Can I reuse TED notices commercially?
Yes. TED’s legal notice says OJ S procurement notices can be freely reused for commercial or non-commercial purposes unless otherwise noted.
Is there an MCP server for TED?
Not from the EU. An independent operator runs one at https://ted-mcp.eu/mcp whose basic search tools work without a key.
Compare
Put TED Search API (EU public tenders) side by side with other free agent tools on keys, limits, MCP support, licensing and CORS. Open the comparison grid →
SourcesFootnotes
- 1docs.ted.europa.eu/api/latest/index.htmlVerified 2026-10-29
- 2api.ted.europa.eu/v3/notices/searchTested 2026-10-29
- 3api.ted.europa.eu/api-v3.yamlVerified 2026-10-29
- 4ted.europa.eu/en/news/fair-usage-policy-on-tedVerified 2026-10-29
- 5ted.europa.eu/en/legal-noticeVerified 2026-10-29