UK Contracts Finder Scraper: Tenders & Awards avatar

UK Contracts Finder Scraper: Tenders & Awards

Pricing

from $0.24 / 1,000 notices

Go to Apify Store
UK Contracts Finder Scraper: Tenders & Awards

UK Contracts Finder Scraper: Tenders & Awards

Scrape UK Contracts Finder, no login: live tenders, early engagement, future opportunities and contract awards from the official API. Get buyer contacts, CPV codes, values, deadlines, winning suppliers with Companies House numbers and documents. Monitor new or changed notices, pay per notice.

Pricing

from $0.24 / 1,000 notices

Rating

0.0

(0)

Developer

Automation Craft

Automation Craft

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

UK Contracts Finder Scraper: Tenders & Awards

This UK Contracts Finder scraper reads the official Contracts Finder API (contractsfinder.service.gov.uk, the UK government's register of public sector contracts) with no login, no API key and no proxy to configure. It returns every notice type Contracts Finder publishes: live opportunities (tenders), early engagement, future opportunities and awarded contracts, as flat, spreadsheet ready rows plus the complete Open Contracting (OCDS) release for developers.

What makes it different from a thin API wrapper:

  • Buyer contacts and winning suppliers in columns: buyer contact name, email, phone and address as published; suppliers with Companies House numbers, SME and VCSE flags and award values.
  • Opportunity to award links: an award is a separate notice on Contracts Finder. Every row carries the procurement's ocid and links to the other notices of the same procurement, so an award points to its original opportunity (opportunityNoticeId).
  • Filters Contracts Finder's feed does not have: CPV codes and prefixes, keywords, regions, postcodes and postcode radius, value range, buyer and supplier names, Companies House numbers, SME and VCSE suitability, closing within N days, deadline and award dates, framework call-offs excluded.
  • A monitor that only returns what is new or changed since the previous run, and never bills an unchanged notice twice.
  • Past the API's silent caps: the OCDS feed stops after 2,100 releases and the search after 1,000 hits; this Actor continues past both and tells you in the run summary.
  • Polite by design: Contracts Finder allows 12 calls per 2 minutes per IP. The Actor stays under that, so runs do not fail on rate limits.

Quick start

  1. Leave everything empty and press Start: you get the notices published in the last 7 days (the Console prefill asks for 3 days and 10 notices).
  2. Narrow it down: pick Notice types (for example Opportunity), tick Open notices only, add CPV codes such as 72000000 for IT services or Keywords such as cleaning.
  3. For bid alerts, add a Monitoring memory name such as it-tenders-daily and schedule the Actor daily: each run returns only new or changed notices.
  4. Export the dataset as CSV, Excel or JSON, or call the Actor from the API, Make, Zapier, n8n or an AI agent (MCP).

Ready made example: Open UK IT and software tenders (open opportunities in CPV 72 and 48, with buyer, contact email, deadline and value).

What you get

One row per notice (type: "notice"), one free run-summary row per run, and free status rows for anything the Actor could not do. Fill rates below were measured on 1,000 real rows (922 awards, 73 opportunities, 5 early engagement notices) from a platform run on 2026-09-29.

fieldwhat it isfilled
noticeId, noticeUrl, releaseId, ocidContracts Finder notice id and page, OCDS release and procurement id100%
noticeType, status, isOpenearly_engagement, future_opportunity, opportunity or award; OCDS status; still open100%
title, descriptionas published100%
buyerName, buyerContactEmail, buyerPostcodebuying organisation and contact100%
buyerContactNamecontact person61%
buyerContactPhonecontact phone41% (more with notice details)
cpvCode, cpvCodes, cpvDescriptionCommon Procurement Vocabulary100%
deadline, daysUntilDeadlinetender or engagement deadline (awards keep the original tender deadline)100%
contractStart, contractEnd, contractDurationDayscontract period100% of opportunities and awards
valueAmount, valueMin, currency, valueIsPlaceholderestimated value; 0 or 1 pound placeholders flagged85% (63% of opportunities)
procurementMethodDetailsfor example Open procedure, Call-off from a framework agreement99%
suitableForSme, suitableForVcsethe buyer's suitability flags100%
deliveryRegions, deliveryPostcodes, isNationwidewhere the work is deliveredregions 50%, postcodes 36%
supplierNames, awardedValue, awardedAt, awardswinning suppliers, value and date100% of awards
supplierCompanyNumberswinners' Companies House numbers42% of awards
documents, documentCountattachments and links (ITT, specifications, pricing schedules)68% of opportunities have at least one
linkedNotices, opportunityNoticeId, awardNoticeIdsother notices of the same procurementdepends on what this run and the memory saw
changeType, firstSeenAt, previousReleaseIdnew, updated or unchanged against your memorywith a memory
ocdsReleasethe complete OCDS release as published100% (switch off with Include the full OCDS release)

Example (shortened):

{
"type": "notice",
"noticeId": "8c4ed675-8d90-4220-924c-8846c8f86df6",
"noticeUrl": "https://www.contractsfinder.service.gov.uk/Notice/8c4ed675-8d90-4220-924c-8846c8f86df6",
"ocid": "ocds-b5fd17-6699a7aa-1904-4ff9-9056-a40618fb86bd",
"noticeType": "opportunity",
"status": "active",
"isOpen": true,
"title": "Taxi and MPV (1-8 seats) Passenger Assistant",
"buyerName": "East Sussex County Council",
"buyerContactEmail": "procurement@eastsussex.gov.uk",
"buyerPostcode": "BN7 1UE",
"deadline": "2026-10-01T10:00:00.000Z",
"daysUntilDeadline": 3,
"cpvCode": "60000000",
"cpvDescription": "Transport services (excl. Waste transport)",
"procurementMethodDetails": "Restricted procedure (above threshold)",
"suitableForSme": true,
"suitableForVcse": false,
"linkedNotices": [],
"changeType": "new"
}

Notice details (optional)

Tick Add notice details to add what only the notice record carries: the buyer's phone and website, every attachment with its file name, supplier DUNS numbers and references, the version history and the view count. It is one extra call per notice and Contracts Finder allows about 5 calls a minute, so it is capped by Maximum notices with details (25 by default).

How monitoring works

With a Monitoring memory name, the Actor remembers every notice version it delivered. The next run reads from where the previous run ended (with a 6 hour overlap), skips unchanged notices free, and returns new notices and notices Contracts Finder republished with different content (changeType: "updated"). The memory also remembers every procurement it saw, so an award published weeks later is linked to its opportunity. A memory name belongs to this Actor and your account.

How much does it cost to scrape Contracts Finder?

You pay per notice delivered, and nothing for filtered, duplicate or unchanged notices, status rows or the run summary.

eventFREEBRONZESILVERGOLD
Notice$0.30 per 1,000$0.30 per 1,000$0.27 per 1,000 (10% off)$0.24 per 1,000 (20% off)
Notice detail (optional)$0.30 per 1,000$0.30 per 1,000$0.28 per 1,000$0.26 per 1,000
Actor start$0.001 per run$0.001 per run$0.001 per run$0.001 per run

Examples: a daily alert that finds 12 new opportunities costs about $0.0046 (start plus 12 notices); an export of 1,000 notices costs $0.30 plus $0.001. The Store pricing card shows "from $0.24 / 1,000 notices", the GOLD price; the FREE price is "$0.30 / 1,000", so one notice costs three hundredths of a cent.

Input

All fields are optional. The most useful ones:

fieldexamplemeaning
publishedWithinDays7rolling window (default 7)
publishedFrom, publishedTo2026-09-01fixed window instead
noticeTypes["opportunity"]early_engagement, future_opportunity, opportunity, award
openOnlytruedeadline not passed
keywords, excludeKeywords["cleaning"]whole words in title or description
cpvCodes["72000000", "48"]CPV codes or prefixes
regions, postcodes["London"], ["LS"]delivery location
nearPostcode, radiusMiles"LS1 4AP", 10radius search
minValue, maxValue100000value range in GBP
buyerNames, supplierNames, supplierCompanyNumbers["NHS"]who buys, who won
smeSuitableOnly, vcseSuitableOnly, excludeCallOffstruesuitability and procedure
closingWithinDays14deadline in the next N days
noticeIdsnotice ids or URLsdirect lookup
memoryName"it-tenders-daily"new or changed since the last run
maxResults100notice rows per run

Search method. auto (default) picks the path with fewer API calls: the OCDS feed for recent windows (every field, newest first), or Contracts Finder's own search for long windows with a keyword, buyer, supplier, CPV, region or radius filter, after which every hit is matched to its full OCDS release. A hit that has no matching release is delivered from the search summary and flagged hydrated: false.

API example

curl -X POST "https://api.apify.com/v2/acts/automation_craft~uk-contracts-finder-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"noticeTypes":["opportunity"],"openOnly":true,"cpvCodes":["72000000"],"maxResults":50}'

What this Actor does NOT do

  • It does not cover Find a Tender (the UK's above threshold service since the Procurement Act 2023), Public Contracts Scotland, Sell2Wales or eTendersNI. Contracts Finder is mostly below threshold opportunities and award transparency notices (about 45 opportunities and 700 awards a week in September 2026).
  • It does not download attachment files; it returns their links and file names.
  • It does not return bid counts: Contracts Finder does not publish them.
  • An award is linked to its opportunity only when this run or your memory saw that opportunity.
  • Contract values are what the buyer published; about a third of opportunities publish none.

FAQ

What is Contracts Finder?

Contracts Finder is the UK government service where public bodies in England (and some UK wide bodies) publish contract opportunities and awarded contracts, typically for contracts above about 12,000 to 30,000 pounds. This Actor reads its official open API, published under the Open Government Licence.

Is there an official Contracts Finder API, and why use this Actor instead?

Yes, and this Actor uses it. The official OCDS feed has only date and stage filters, stops after 2,100 releases, and blocks callers who send more than 12 requests in 2 minutes. The Actor adds the filters, the paging past the caps, the rate limit handling, the flat columns, the award links and the monitoring memory.

Can I get Contracts Finder data in OCDS JSON format?

Yes: every row carries the complete OCDS release in ocdsRelease, next to the flattened fields.

How do I get alerts for new UK public sector tenders?

Set Notice types to Opportunity, tick Open notices only, add your CPV codes or keywords, give it a Monitoring memory name and schedule it daily. Each run returns only new or changed notices.

How can I see which companies win public contracts?

Choose the Awarded contract type and use Winning supplier names or Companies House numbers; every award row lists the suppliers, their Companies House numbers where published, SME flags and the awarded value.

Why does this Actor run with limited permissions?

It follows least privilege: it can only read and write its own storages. The monitoring memory is a named store the Actor creates for you on its first run with that name.

More data tools by Automation Craft

Changelog

  • 0.1 (2026-09-29): first release.