Disclosure: this post is written by Johto Data, the maker of the APIs and Store Actors shown here.

Johto Data is a data provider. Three of its pay-per-call routes return procurement notices as one flat JSON shape: UK tenders ($0.003 a call), French tenders ($0.006) and Australian contract notices ($0.0035). Each call returns up to 25 notices. Every route has a free ?sample=1.

Try it free

curl -s "https://johto-x402-api.johtodata.workers.dev/v1/uk-tenders?sample=1" curl -s "https://johto-x402-api.johtodata.workers.dev/v1/fr-tenders?sample=1" curl -s "https://johto-x402-api.johtodata.workers.dev/v1/au-contracts?sample=1" 

First UK record from the sample (fetched 2026-10-22T15:10:48Z):

{ "notice_id": "FTS-099867-2026", "source": "uk-fts", "title": "Fostering and Continuing Care Services 0924", "buyer_name": "Scotland Excel", "buyer_country": "GB", "published_date": "2026-10-22", "deadline_date": "2026-11-18T12:00:00Z", "value_amount": 345000000, "value_currency": "GBP", "categories": ["85300000", "85310000"], "category_scheme": "CPV", "procedure_type": "Open procedure", "notice_type": "tender", "notice_url": "https://www.find-tender.service.gov.uk/Notice/099867-2026", "data_as_of": "2026-10-22T14:41:56Z" } 

The French and Australian routes return the same 15 keys. French notices carry BOAMP descriptors instead of CPV codes and no value. Australian notices carry UNSPSC codes and the contract value in AUD.

Live calls

# UK: Find a Tender (default) or Contracts Finder, published since a date curl -i "https://johto-x402-api.johtodata.workers.dev/v1/uk-tenders?feed=fts&since=2026-10-20&limit=25" # France: BOAMP by département and title keyword curl -i "https://johto-x402-api.johtodata.workers.dev/v1/fr-tenders?dept=75&q=nettoyage&limit=25" # Australia: AusTender contract notices in a date range curl -i "https://johto-x402-api.johtodata.workers.dev/v1/au-contracts?since=2026-10-15&until=2026-10-22" 

Without payment each call answers 402 Payment Required with x402 terms (USDC on Base, eip155:8453). Any x402 client pays and retries. A call that matches nothing, or where the source fails, is not charged. Invalid input returns 400 and is not charged.

From an MCP client

The same routes are MCP tools named uk-tenders, fr-tenders and au-contracts on https://johto-x402-api.johtodata.workers.dev/mcp (Official MCP Registry: com.johtodata/johto-data).

{"mcpServers": {"johto-data": {"url": "https://johto-x402-api.johtodata.workers.dev/mcp"}}} 
curl -s -X POST https://johto-x402-api.johtodata.workers.dev/mcp \ -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"uk-tenders","arguments":{"sample":true}}}' 

sample: true returns the free sample. Without it, the tool returns the x402 terms and the exact URL to pay.

Scope

  • UK: Find a Tender and Contracts Finder notices. Contact names, emails and phone numbers are not included.
  • France: BOAMP notices.
  • Australia: awarded contract notices only, not open approach-to-market listings. Supplier names are not included.

Also on Apify Store

If you run agents on Apify, the same company-level data is available as Store Actors with a $0.00005 start fee plus a per-result price:

Sources and credits

  • UK: Contains public sector information licensed under the Open Government Licence v3.0.
  • France: BOAMP, DILA, Licence Ouverte / Open Licence.
  • Australia: AusTender, Department of Finance, CC BY 3.0 AU.

Johto Data: https://johtodata.com. MCP Registry entry: https://registry.modelcontextprotocol.io/v0/servers?search=com.johtodata/johto-data