Gov Tender Radar avatar

Gov Tender Radar

Pricing

from $4.25 / 1,000 delivered official tender notices

Go to Apify Store
Gov Tender Radar

Gov Tender Radar

Search official TED procurement notices by keyword, CPV query, or buyer country. Get buyer, deadline, primary URL, confidence, gaps, and billing evidence. No-match, failed, duplicate, and withheld outcomes are free. Discovery does not prove eligibility, fit, amendments, or award probability.

Pricing

from $4.25 / 1,000 delivered official tender notices

Rating

0.0

(0)

Developer

Tim Zinin

Tim Zinin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Gov Tender Radar — EU Public Procurement Search (TED)

Point this Actor at keywords or CPV codes and get back matching EU public-sector tenders — title, buyer, buyer country, CPV classification, submission deadline and a direct link to the notice, sorted newest-first. Every result comes straight from TED Europa's own public search API: no scraping, no API key, no login.

Government Tender Opportunity Evidence: buyer input to evidence-backed action

What you get

  • Live tenders, not a stale index. One row per matching notice: publicationNumber, title, buyer, buyerCountry, cpv, deadline, publicationDate and a ready-to-open url.
  • Two ways to search. Plain keywords do a full-text search; TED expert-query field expressions (e.g. classification-cpv=72000000) filter directly, and you can mix both with AND/OR.
  • Country filter. Set country to AND an ISO 3-letter buyer-country code into every query.
  • Sorted newest-first by publication date, so live and upcoming opportunities surface before old, closed notices.
  • Runs on Apify: schedule it, monitor it, call it from the API or the MCP server, export to JSON, CSV or Excel, or push results straight into your own pipeline.

Who uses it

  • Sales & bid teams — get alerted to a matching tender before half the submission window is already gone.
  • Public-affairs teams & consultants — track a client's sector or a specific buyer for new notices.
  • Market researchers — measure procurement activity by country or CPV category over time.

Why it matters

Companies chasing public-sector contracts either pay for a procurement-alerts SaaS seat or manually refresh the TED Europa website for new notices matching their CPV codes. Both are slow, and by the time a human spots a fresh tender, half the bidding window is already gone.

Government Tender Opportunity Evidence: evidence-to-action workflow

How to run it

  1. Click Try for free — no card needed on the free plan.
  2. Paste keywords or TED expert-query expressions into Search queries, one per line. Optionally set Buyer country.
  3. Press Start. Results appear in the dataset — read them in the UI, pull them from the API, or have a webhook push them onward.

Pricing

Pay-per-event: $0.005 per run start + $0.005 per result found. No monthly seat, no minimum. 100 matching notices cost about $0.51; 1,000 about $5.01.

A query that matches nothing, or fails outright, is still returned with found: false — and it is not charged for. You pay for matches, not for attempts.

Input

FieldRequiredWhat it does
queriesyesKeywords or TED expert-query expressions, one search per entry. Plain words do a full-text search; field expressions (classification-cpv=72000000) filter directly; mix both with AND/OR. Up to 25 per run.
countrynoISO 3-letter buyer-country code to AND into every query, e.g. DEU, FRA. Leave empty for all EU countries.
limitnoMax notices returned per query (1–100, default 20).
maxConcurrencynoParallel queries against TED (1–8, default 3).
{
"queries": ["classification-cpv=72000000", "software"]
}

Output

One row per matched notice, or one graceful "no match" row per query that found nothing. This is a real row from a real run:

{
"sourceQuery": "classification-cpv=72000000",
"found": true,
"publicationNumber": "512430-2026",
"title": "Portugal – Technical computer support services – Aquisição de serviços de assistência técnica da plataforma SUN Oracle",
"buyer": "Autoridade Tributária e Aduaneira",
"buyerCountry": "PRT",
"cpv": "72611000",
"deadline": null,
"publicationDate": "2026-07-24+02:00",
"url": "https://ted.europa.eu/en/notice/-/detail/512430-2026",
"matched": null,
"error": null,
"summary": "Portugal – Technical computer support services – Aquisição de serviços de assistência técnica da plataforma SUN Oracle — Autoridade Tributária e Aduaneira (PRT).",
"checkedAt": "2026-07-26T13:58:42.826Z"
}
FieldWhat it means
sourceQueryThe query that produced this row
foundWhether a matching notice was returned
publicationNumberTED's notice ID
titleNotice title (English, or first available language)
buyerContracting authority
buyerCountryBuyer's ISO 3-letter country code(s)
cpvCommon Procurement Vocabulary code(s)
deadlineTender submission deadline, when TED has published one — null is normal for notice types that don't carry one (e.g. prior information, contract award)
publicationDateWhen the notice was published
urlDirect link to the notice on ted.europa.eu

Related tools for adjacent workflows in compliance and public procurement.

ActorWhat it does
Tender Alert — New EU Tender WatchPair it in the compliance and public procurement workflow: Watch EU public-sector tenders (TED Europa) matching your keywords/CPV codes and get ONLY the new ones...
Company Registry EnricherPair it in the compliance and public procurement workflow: Turn a company name, LEI or UK company number into an official registry card: legal name, status,...
Sanctions Screening APIPair it in the compliance and public procurement workflow: Screen names against the live OFAC SDN and EU consolidated sanctions lists
EU AI Act Transparency Lead ScannerPair it in the compliance and public procurement workflow: BYOD compliance scanner for observed AI transparency signals on a submitted URL. Deterministic,...
Sanctions Update Alert — Watchlist Change MonitorPair it in the compliance and public procurement workflow: Watch a list of names against OFAC SDN and EU consolidated sanctions lists and get ONLY the changes since...

FAQ

Does it need an API key or login? No — TED Europa's search API is public and keyless.

How fresh is the data? Results are sorted newest-first by publication date, so live and just-published notices surface first.

Why is deadline null on some rows? Not every notice type carries a submission deadline — prior information notices and contract award notices, for example, are informational and won't have one. That's expected, not a missing field.

Can I call it from an AI agent? Yes — it's a standard Apify Actor, callable via the Apify API or the Apify MCP server.

What this is NOT. It does not evaluate whether you're eligible to bid, does not fetch the full tender documents, and does not cover national-only tenders below the EU publication threshold — only what TED itself publishes.

This Actor surfaces public procurement notices for research and monitoring. It is not legal or bidding advice — verify eligibility, deadline and requirements directly on the official notice before submitting anything.

Found a wrong result, or need a check we don't run? Open an issue on this Actor's page.


Built by zinin. Questions? Telegram @timzinin.

What this Actor is — and is not

Gov Tender Radar is a bounded official-notice discovery and review-routing tool. It sends buyer queries to the public TED Europa search API, normalizes the requested notice fields, retains the publication number and primary TED URL, and returns an evidence card that a bid team can review. It is designed to reduce repetitive discovery work—not to make a bid/no-bid decision.

It is not a complete procurement database, national portal crawler, tender-document parser, eligibility engine, legal service, bid writer, pricing model, award predictor or proof that a notice is still open. TED contains notices subject to European publication rules; national and sub-threshold opportunities may live elsewhere. Every row therefore keeps safeToAutomate: false.

Search and source contract

Each query becomes one bounded TED expert-search expression. Bare text is escaped into TED's full-text field syntax; expressions that already contain field operators are preserved. An optional three-letter buyer-country code is combined with each query. The Actor requests only a documented field set and caps the JSON response while streaming it.

The source path is transparent:

  • publicationNumber is TED's notice identity;
  • url points to the primary TED notice page;
  • publicationDate is the source-published date when available;
  • checkedAt and observedAt record this run's observation time;
  • sourceEvidence retains the direct notice reference;
  • freshness distinguishes source publication from run observation;
  • dataGaps names deadline, buyer, scope and eligibility facts that are not established.

Multilingual values can be arrays or language maps. The Actor prefers English when published and otherwise selects the first available readable value. That normalization is convenient for a Dataset table, but it is not a translation service and does not replace the complete multilingual notice or attached procurement documents.

What one row means

A tender_observation row means TED returned a usable notice. The Actor charges that delivered unit and attaches evidence confidence. High evidence confidence means the publication number, primary link, buyer and deadline fields were present—not that the opportunity is commercially good or that the buyer is eligible.

An advisory row is free. It may mean a query produced no notice, TED rejected the expression, the source timed out, the response exceeded the safety cap, pricing was misconfigured or the buyer's run budget stopped additional delivery. failureType and retryable distinguish correction from a reasonable retry.

deadline: null can be valid for a notice type without a submission deadline. It can also mean the requested TED fields did not expose one. In both cases the operator must open the primary notice and determine the relevant date, timezone, lot and amendment status.

Decision fields

Legacy tender fields remain available. The additive Commercial115 layer adds:

FieldMeaning
recordTypeUsable tender_observation or free advisory
schemaVersionVersion of the decision-row contract
entityIdStable Actor-scoped publication identity or query identity
observedAtWhen this run observed the row
confidenceScore / confidenceBandConfidence in the evidence path, not bid quality
confidenceReasonsWhy the row received its evidence score
confidenceRisksSource and interpretation conditions that require review
sourceEvidencePrimary TED notice reference
freshnessObservation date and source publication date when present
changeExplicitly unavailable; this Actor is discovery, not snapshot comparison
dataGapsEligibility, lot, amendment, scope and award facts not established
negativeSignalsMissing primary fields or failed-source review flags
recommendedActionRead/refine/retry instruction
actionPriority / actionReasonReview urgency and rationale
interpretationBoundaryDurable non-overclaim statement
safeToAutomateAlways false
failureType / retryable / partialFailure and partial-delivery truth
billingWhether this delivered row was linked to result-found

Practical buyer workflows

Small software vendor

Use a combination of a full-text phrase and a CPV family. Export the resulting rows to a review table, sort by deadline, and open the primary notice for the top candidates. Confirm lot structure, turnover requirements, references, certifications, language and place of performance. Only then assign proposal effort.

Public-sector sales agency

Run separate queries for each client's offer so sourceQuery remains an auditable routing key. Deduplicate publication numbers in the CRM and store the primary URL. Treat buyer and keyword matches as discovery signals, not product-fit proof. A human account owner should attach a fit note before creating an opportunity.

Market-intelligence team

Schedule stable CPV expressions and persist Dataset snapshots outside the Actor. This Actor does not claim a change comparison: calculate additions, removals and amendments using your own retained snapshots or a dedicated alert product. Preserve publication and observation dates separately.

Consultant or grant adviser

Use the feed to identify organizations and themes worth further research. Do not promise a client that the discovered notice is eligible, funded, complete or winnable. Open attached documents and country-specific procurement guidance first.

Manual qualification checklist

  1. Open url and confirm the publication number.
  2. Determine notice type: competition, prior information, award, corrigendum or another form.
  3. Review every lot; a row-level title can hide materially different lots.
  4. Confirm the contracting authority and any joint procurement structure.
  5. Verify deadline, timezone, electronic submission portal and amendment history.
  6. Read exclusion grounds and economic/technical selection criteria.
  7. Confirm CPV relevance against the actual specification rather than the code alone.
  8. Check language, geography, required certifications, security and data-residency terms.
  9. Estimate delivery capacity, bid cost and commercial fit using your own evidence.
  10. Record a human bid/no-bid decision and the primary documents used.

API and automation

Start a run with a token and bounded input:

curl -sS -X POST 'https://api.apify.com/v2/acts/zinin~gov-tender-radar/runs?waitForFinish=180' \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H 'Content-Type: application/json' \
--data '{"queries":["cloud services","classification-cpv=72000000"],"country":"DEU","limit":20,"maxConcurrency":2}'

Use defaultDatasetId from the run to fetch rows. Read KVS OUTPUT for requested, unique, duplicate, attempted, delivered, paid, free, withheld and source-failure counts. A downstream job should require fatalError: null, reconcile delivery and billing, and still route every usable row to manual notice review.

For an Apify MCP client:

{
"name": "call-actor",
"arguments": {
"actor": "zinin/gov-tender-radar",
"input": {
"queries": ["cloud services", "classification-cpv=72000000"],
"country": "DEU",
"limit": 20,
"maxConcurrency": 2
}
}
}

Billing and run receipt

Apify charges the run-start event according to memory. This Actor links result-found only to a usable tender observation delivered to the Dataset. No-match, failed-query, duplicate and budget-withheld advisory rows remain free of the result event.

The concurrency pool does not control billing independently. A single critical section serializes the remaining-budget check, linked Dataset delivery and receipt update. If the linked call throws or returns an ambiguous uncharged delivery, the Actor records a fatal error and replaySafe: false. It does not silently label the run successful or retry a possibly delivered row.

OUTPUT.status is:

  • COMPLETE when all known work was delivered without source failure or withholding;
  • PARTIAL when a source failed or the budget withheld later results;
  • FAILED when a fatal delivery, pricing, input or receipt condition prevents a trustworthy run.

Query design guidance

  • Start with the vocabulary used in public procurement, not only your marketing language.
  • Pair a broad full-text phrase with a CPV expression when recall matters.
  • Keep country filters separate when procurement rules or sales ownership differ.
  • Use a small limit while refining a noisy query, then increase it after reviewing precision.
  • Preserve exact expert expressions; unlike proven free-text searches, field syntax is not folded for deduplication because changing case or punctuation could change TED semantics.
  • Schedule stable queries, but monitor source/schema changes and review the primary notice every time.

Important limitations

  • Coverage is TED only; national and local portals can publish additional opportunities.
  • The Actor requests a bounded subset of notice fields and does not download attachments.
  • Result count is capped per query and therefore non-exhaustive above the limit.
  • Full-text relevance is controlled by TED search semantics, not a learned fit model.
  • CPV codes can be broad, missing or applied differently across notices.
  • Deadline fields can be absent, repeated per lot, corrected or superseded.
  • Buyer name and country do not establish the contracting legal entity or payment risk.
  • Publication does not prove budget, award, cancellation status or supplier eligibility.
  • The Actor does not translate or legally interpret procurement documents.
  • Source availability and publication timing remain upstream dependencies.

Operational acceptance checklist

  • Use bounded, reviewable queries.
  • Keep the exact query and country with each opportunity.
  • Require a primary TED URL for any row promoted to review.
  • Open the notice and attachments before a bid/no-bid decision.
  • Recheck deadlines and corrigenda immediately before submission.
  • Keep human approval before CRM opportunity creation or bid commitment.
  • Reconcile Dataset, KVS OUTPUT and pay-per-event counts.
  • Investigate fatal runs and do not replay when replaySafe is false.
  • Record assumptions separately from observed TED facts.
  • Use dedicated national sources where TED coverage is insufficient.

Release evidence contract

This campaign accepts production only after the local runtime and official schemas pass, immutable source read-back matches the reviewed candidate, one capped no-retry canary proves paid/free, duplicate and withheld behavior, Dataset and KVS OUTPUT reconcile with settled pay-per-event counts, and measured revenue covers Apify usage by at least the campaign floor. The public Store is then checked anonymously for the correct card, Input, pricing, boundaries and exactly two unique 1600×900 selling diagrams.

Data handoff pattern

Keep observed and derived fields in separate columns when loading the Dataset into a CRM or data warehouse. publicationNumber, title, buyer, buyerCountry, cpv, deadline, publicationDate and url are normalized TED observations. Confidence, gaps and recommended actions are Actor decision metadata. Your fit score, territory owner, expected contract value, win probability and bid/no-bid choice belong in buyer-controlled fields with their own evidence.

A useful downstream key is the TED publication number plus the lot identity obtained from the primary notice. This Actor emits one notice-level row and does not claim lot-level uniqueness. If multiple queries return the same notice, deduplicate downstream while preserving every matching sourceQuery; those query labels explain why the opportunity entered the queue.

For scheduled runs, persist a snapshot timestamp and compare primary publication identities before notifying users. Do not interpret a row missing from a later bounded result page as withdrawal: it may simply have moved below the query limit. Verify withdrawal, correction or award status on TED.

Support diagnostics

When reporting a problem, include the run ID, exact query, optional country, limit, observation time, failureType, retryable, KVS OUTPUT status and the TED publication number when one exists. Do not send Apify tokens, bidder credentials or confidential proposal documents. The Actor needs none of those materials to reproduce public search behavior.

Schema or source changes should fail visibly as an advisory or fatal receipt. A new source field is not silently interpreted as buyer, deadline or CPV. That fail-closed behavior can reduce delivery during an upstream incident, but it prevents a structurally valid-looking row from carrying the wrong procurement meaning.