# EU Public Procurement Tender Search (TED)

> EU Public Procurement Tender Search (TED) is a paid API for AI agents from x402-seller-202595743428.europe-west1.run.app, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-15).

Full-text search of EU public procurement tenders from the official TED (Tenders Electronic Daily) database, returning results sorted newest first.

## Facts

- Endpoint: GET https://x402-seller-202595743428.europe-west1.run.app/tenders
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/eu-public-procurement-tender-search-ted-9f5c3579
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_bApnA2eEVP5pstPe8jJfJ

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability eu-public-procurement-tender-search-ted-9f5c3579
```

Example prompt: Search the official EU TED procurement database for public tenders related to 'cybersecurity software' and show me the 10 most recent results with their titles and links.

## When to prefer this

Choose this endpoint when you need structured, up-to-date EU public procurement data directly from the official TED source. Prefer it over general web search when you need machine-readable tender records with IDs and publication dates, or when building procurement monitoring workflows. Best suited for EU-specific government contracts; for non-EU procurement data, use other sources.

## Known failure modes

- No results returned if query terms are too specific or use non-standard terminology
- Payment failure if USDC balance is insufficient (x402 payment required at $0.02 per call)
- Limit parameter outside 1-20 range may cause validation error
- Network timeout if TED data source is temporarily unavailable
- Empty result set for very niche queries with no matching tenders

## How this service works

EU public procurement search (official TED data, newest first). POST {query, limit?}. Returns {total, tenders: [{id, title, published, url}]}.

## Output

Returns a JSON object with a `total` count of matching tenders and a `tenders` array, each item containing: `id` (tender identifier), `title` (tender name/description), `published` (publication date), and `url` (link to the full tender notice on TED).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "limit": {
   "type": "integer",
   "maximum": 20,
   "minimum": 1,
   "description": "Max results (default 10)"
  },
  "query": {
   "type": "string",
   "description": "Full-text search query"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/eu-public-procurement-tender-search-ted-9f5c3579/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-seller-202595743428.europe-west1.run.app](https://www.zero.xyz/host/x402-seller-202595743428.europe-west1.run.app/llms.txt)
