Public Tenders & Procurement: EU TED, UK, US SAM.gov avatar

Public Tenders & Procurement: EU TED, UK, US SAM.gov

Pricing

$3.00 / 1,000 notice returneds

Go to Apify Store
Public Tenders & Procurement: EU TED, UK, US SAM.gov

Public Tenders & Procurement: EU TED, UK, US SAM.gov

Public procurement tenders, RFPs and contract awards from EU TED, UK Find a Tender, UK Contracts Finder and US SAM.gov in one feed. Filter by keyword, CPV or NAICS code, country and value. Monitoring mode returns only new notices.

Pricing

$3.00 / 1,000 notice returneds

Rating

0.0

(0)

Developer

Post Atelier

Post Atelier

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

What does Public Tenders & Procurement do?

It collects public tenders, RFPs and contract awards from TED (EU tenders), UK Find a Tender, Contracts Finder and SAM.gov, and returns them in one normalised format:

RegionSourceWhat you get
🇪🇺 EU + EEATED (Tenders Electronic Daily, the EU's official journal for public procurement)Contract notices, prior information notices, award notices from every EU member state and more
🇬🇧 UKFind a TenderAbove-threshold UK public procurement notices
🇬🇧 UKContracts FinderUK public sector contracts, including lower-value ones
🇺🇸 USSAM.gov contract opportunitiesFederal solicitations, pre-solicitations, sources sought, awards

Filter by keywords, CPV codes (EU/UK) or NAICS codes (US), country, notice type and minimum value, and keep only tenders that are still open. Turn on Only new notices and schedule it daily to get a feed of fresh tenders in your field.

What you get

A real run with "keywords": ["software"] over the last 3 days returned, among others:

TitleBuyerCountryValueDeadlineSource
Website redesign and redevelopmentCapital City CollegeGB–2026-10-27Find a Tender
Connected Business Platforms Systems Integrator Service ProvisionUK Hydrographic OfficeGB£5,000,000–Find a Tender
Lithuania – Software programming and consultancy servicesVĮ Registrų centrasLT€364,8002026-11-16TED
Germany – IT services: consulting, software developmentTenneT TSO GmbHDE€7,200,000–TED
Sweden – IT services: consulting, software developmentArbetsförmedlingenSESEK 600,000,0002026-11-12TED
Bulgaria – Software package and information systemsИНФОРМАЦИОННО ОБСЛУЖВАНЕ АДBG€817,7402026-11-18TED

Each row is a full JSON record with CPV/NAICS codes, description, notice type, publication date and a link to the official notice (see the output example below). Results download as JSON, CSV or Excel, or go straight to Sheets, Slack or your CRM.

Run it on a schedule: Slack, e-mail, Google Sheets or a webhook

Set it up once and get new tenders in your field automatically:

  1. Save a task. Fill in the input (or paste the JSON below in the JSON editor) and click Save as a new task.
    { "cpvCodes": ["72", "48"], "countries": ["DE", "FR", "GB"], "publishedWithinDays": 2, "openOnly": true, "onlyNew": true, "monitorName": "it-tenders" }
  2. Schedule it daily. Open Schedules in the left menu of the Apify Console, create a schedule, pick the time and add your task. Each run then returns only notices that earlier runs haven't, so you pay only for new ones.
  3. Send the results somewhere. In the task's Integrations tab:
    • Slack: "Send notification via Slack" when a run succeeds.
    • E-mail or Google Drive: "Send results email via Gmail" attaches the rows; "Upload results to GDrive" saves them as a file.
    • Google Sheets, CRM, n8n: connect the task through Make, Zapier or n8n (listed under Automation platforms) and add a row per result.
    • Webhook: add an HTTP webhook for the event Run succeeded with your URL. The payload includes resource.defaultDatasetId; fetch the rows from https://api.apify.com/v2/datasets/<defaultDatasetId>/items.

Who uses it

  • Bid and proposal teams that want every new tender in their category, across borders, in one place.
  • Sales teams selling to the public sector: who is buying what, from which budget, by when.
  • Market research: award notices show who won which contract and for how much.
  • AI agents and newsletters that summarise new tenders in a niche.

How to use it

{
"keywords": ["software", "cloud"],
"cpvCodes": ["72"],
"countries": ["DE", "AT", "GB"],
"publishedWithinDays": 7,
"openOnly": true
}
  • CPV and NAICS codes work as prefixes: 72 matches every IT-services code, and 5415 every NAICS computer-systems code.
  • SAM.gov is off in the example input. Add us-sam to sources (or leave sources empty) for US federal notices.
  • Countries are ISO codes for the buyer's country. Sources that can't match are skipped automatically, so ["DE"] only queries TED.
  • Daily feed: add "onlyNew": true, "monitorName": "it-tenders", save as a task and schedule it. Each run returns only notices you haven't seen, and you only pay for those.

Output example

A real record from a run (description shortened):

{
"title": "Printable Patient Identification Wristbands and Associated Accessories 2027",
"source": "uk-fts",
"noticeId": "097361-2026",
"procurementId": "ocds-h6vhtk-0521ca",
"kind": "tender",
"noticeType": "tenderUpdate",
"buyer": { "name": "SUPPLY CHAIN COORDINATION LIMITED", "country": "GB" },
"country": "GB",
"description": "Opportunity\nNon-exclusive framework agreement for the supply of Laser and Thermal printable wristbands, Thermal Printers- (Direct Thermal Pr…",
"cpvCodes": ["22455100", "30191140", "35123000", "35123400", "30233300"],
"naicsCode": null,
"estimatedValue": { "amount": 50000000, "currency": "GBP" },
"publishedAt": "2026-10-15T11:17:07+01:00",
"deadline": "2026-11-11T15:00:00+00:00",
"placeOfPerformance": null,
"setAside": null,
"awardedTo": [],
"url": "https://www.find-tender.service.gov.uk/Notice/097361-2026",
"sourceInfo": {
"registry": "Find a Tender Service (UK Cabinet Office)",
"licence": "Open Government Licence v3.0",
"attribution": "Contains public sector information licensed under the Open Government Licence v3.0 (Find a Tender)"
},
"query": "Find a Tender",
"retrievedAt": "2026-10-16T16:25:35.643Z"
}

kind is normalised across sources:

  • tender: open calls for bids and solicitations
  • planning: prior information notices, pre-solicitations, sources sought
  • award: contract awards
  • other

One notice per procurement. A tender is often amended several times (new deadline, clarifications), and each amendment is its own notice. By default you get only the newest version of each procurement (per type: tender, award), linked by procurementId (the OCDS ID in the UK, TED's procedure ID, SAM.gov's solicitation number). In monitoring mode, later amendments of a tender you already have are skipped for free. Set includeUpdates: true to get every notice.

US notices also carry naicsCode and setAside (e.g. "Small Business Set Aside - Total"). TED titles and descriptions are in English when TED provides a translation, otherwise in the original language.

Use it from code, Make, Zapier or an AI agent

curl -X POST "https://api.apify.com/v2/acts/postatelier~public-tenders-feed/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "keywords": ["software"], "countries": ["GB", "US"], "publishedWithinDays": 3 }'

It also works from Make, Zapier, n8n and Google Sheets through Apify's integrations. AI agents can call it as a tool through the Apify MCP server, with the Actor name postatelier/public-tenders-feed.

Further reading: TED API in Python: daily IT tender alerts from the EU and UK, a step-by-step tutorial with a Slack digest.

Pricing

Pay per event:

EventPrice
Notice returned$0.003 ($3 per 1,000 notices)

Filters are applied before charging. Notices skipped by monitoring are free.

Examples: 1,000 notices cost $3. A daily feed returning 40 new notices a day costs about $3.60 a month. Apify's free plan includes $5 of monthly credit, which covers about 1,600 notices.

Data sources and licences

Every record carries sourceInfo.licence and sourceInfo.attribution.

  • TED: © European Union, https://ted.europa.eu. Free re-use under Commission Decision 2011/833/EU, with attribution.
  • Find a Tender and Contracts Finder: UK Cabinet Office, under the Open Government Licence v3.0.
  • SAM.gov: the public Contract Opportunities data extract published by the U.S. General Services Administration. Awardee names on awards dated before 2022-04-04 are withheld to respect Dun & Bradstreet's terms on that data.

Privacy

Notices name contact officials: names, e-mails and phone numbers.

  • Contact fields are never read. Only the buyer organisation is kept.
  • Descriptions are scrubbed. Any sentence that names or points to a contact ("Offers must be emailed to …", "Point of contact: …", "Ansprechpartner: …") is replaced with [contact details removed], and stray e-mails and phone numbers are removed. This is pattern-based, so turn descriptions off if you need none at all.
  • Awarded suppliers are listed only when the name carries a legal form or is a public body ("… Ltd", "… GmbH", "… Inc", "… University"). Other names, which could be sole traders, are dropped. Some small companies are dropped as a result.

Good to know

  • Volume: TED publishes about 3,000 notices a working day, so use filters. maxResults is split evenly across the selected sources, and any share a source doesn't use rolls over to TED and then SAM.gov.
  • Keywords match at word starts in the title and description. For SAM.gov only the first 1,500 characters of the description count, to skip the standard clause boilerplate.
  • Times: SAM.gov dates are as published (US Eastern, no offset).
  • Speed: the Actor respects each source's limits. Contracts Finder allows 12 requests a minute, so broad UK runs over long periods take a while. The US extract is streamed and only the requested date window is read.
  • Coverage: below-threshold national portals (e.g. Germany's Vergabeplattformen, Poland's e-Zamówienia) aren't included yet. Tell us which ones you need.

FAQ

How fresh is it? EU and UK notices are queried live. SAM.gov publishes its extract daily.

Can I get the tender documents? The url field links to the official notice page, where documents are linked or downloadable.

Does a source outage break my run? No. If one source is down, the others still return notices, and a free record with status: "source_unavailable" tells you which source is missing. Filter on status before importing results into a spreadsheet or CRM.

Something broke? Open an issue. A health check runs against every source daily, and we aim to fix problems within a day.