Who buys what, from whom.
Notices and contract awards from the two official UK notice services in one schema. Search by buyer, supplier name or Companies House number, CPV code, value and date, and see a supplier's awards by buyer and year or a buyer's notices and suppliers. Every record says which notice it came from.
curl -s "https://api.olympus.new-odyssey.com/v1/uk-procurement/awards?supplier_company_number=$COMPANY_NUMBER&cpv=72&date_from=2026-04-01&limit=25" \
-H "X-API-Key: $OLYMPUS_API_KEY"{
"data": [{
"award_id": "fts:ocds-h6vhtk-…:…",
"source": "fts",
"title": "…",
"status": "active",
"award_sort_date": "2026-…",
"value": { "amount": "…", "amount_gross": null, "currency": "GBP", "source": "award" },
"buyer": { "buyer_id": "GB-PPON-…", "name": "…", "company_number": null, "buyer_path": "…" },
"cpv_codes": ["72…"],
"suppliers": [{ "name": "…", "company_number": "…", "ppon": "…", "supplier_path": "…" }],
"provenance": { "source_id": "cabinet_office.find_a_tender_ocds", "source_url": "…", … }
}],
"meta": {
"datasets": [ … ],
"notices": [{ "code": "as_published", "message": "…" }],
"pagination": { "limit": 25, "has_more": true, "next_cursor": "…" }
}
}As published. Numbers link, names don't.
Values, dates and names are as the notices publish them, read through each service's documented OCDS API. Awards are compiled from every notice that carries them: the latest notice's value of each field, earlier notices filling gaps.
A supplier is linked to a company only through a Companies House number a notice publishes. Names are grouped by a normalised form for search, which is not identity. Buyers are not linked to council spending data: no published identifier connects them to council codes, and names are never matched.
Notices, awards, suppliers, buyers, coverage.
Lists use cursor pagination. Coverage lists the days loaded from each service, so you can tell “nothing published” from “not loaded”.
| Endpoint | What it returns |
|---|---|
| GET/v1/uk-procurement/notices | Search notices |
| GET/v1/uk-procurement/awards | Search awards |
| GET/v1/uk-procurement/awards/{award_id} | Get an award |
| GET/v1/uk-procurement/suppliers/{company_number} | Summarise a supplier by Companies House number |
| GET/v1/uk-procurement/buyers/{buyer_id} | Summarise a buyer |
| GET/v1/uk-procurement/coverage | What is loaded |
Two services, one schema.
Both are Cabinet Office services publishing under the Open Government Licence v3.0. A procurement can appear on both; the two are kept apart (each record names its source) and are not deduplicated.
| service | What it holds |
|---|---|
| Find a Tender | OCDS release packages API. Above-threshold notices, and every Procurement Act 2023 notice since 24 February 2025 (tender, award, contract details, change and termination notices). |
| Contracts Finder | OCDS notice search API. Mostly award notices of procurements run under the earlier regulations, including lower-value contracts. |
Limits
Day windows
Data is loaded incrementally, one day at a time, by each service's last-updated or published date, and recent days are re-read for late edits. Coverage lists the days loaded and any gaps.
Whole-award values
An award's value is the value of the whole award. Supplier totals count only awards where the company is the sole supplier; framework awards shared by many suppliers are counted, not summed.
People
Contact points are never stored. Suppliers can be sole traders: their names are served as published, and only organisations with a Companies House number are linked to other data.