Veldora › Datasets › Norwegian public tenders
Norwegian public tenders from Doffin and TED
Search open Norwegian public tenders (anbud) across Doffin and TED in one call, by CPV code, region, deadline, buyer and free text. Contracts below the EU thresholds are included, and a notice published in both places appears once.
What you get
id(doffin:…orted:…),source,publication_number,titleanddescription(cut at 2000 characters).buyerwith name, organisation number (orgnr), country and city.orgnrisnullwhen the notice has no valid Norwegian number.cpvcodes andmain_cpv, andregionsas NUTS codes.notice_type,procedure_typeandcontract_nature.publisheddate,deadlineandestimated_value(nullwhen the notice gives none).linksto the notice on Doffin or TED, and anawardobject on award notices.- Filters:
q,cpv(prefixes work,72is all IT services),region,deadline_from,deadline_to,buyer_orgnrandopen.
Source: Doffin (DFØ) and Tenders Electronic Daily (TED), European Union. Licence: CC BY 4.0 (Doffin), Commission Decision 2011/833/EU (TED).
Example
Open tenders for IT services (CPV 72) in region NO08, five at a time:
curl "https://veldora.no/v1/tenders?cpv=72®ion=NO08&size=5"
{
"data": [
{
"id": "ted:123456-2026",
"source": "ted",
"publication_number": "123456-2026",
"title": "Rammeavtale for IT-konsulenttjenester",
"buyer": { "name": "Statens vegvesen", "orgnr": "971032081", "country": "NO", "city": "Oslo" },
"cpv": ["72000000"],
"regions": ["NO081"],
"notice_type": "cn-standard",
"published": "2026-10-01",
"deadline": "2026-11-01T12:00:00+01:00",
"estimated_value": { "amount": 5000000, "currency": "NOK" },
"links": { "ted": "https://ted.europa.eu/en/notice/-/detail/123456-2026" }
}
],
"page": { "page": 0, "size": 5, "total": 1 },
"meta": { "source": "ted", "fetched_at": "2026-10-12T04:00:00Z", "stale": false, "as_of": "2026-10-12", "attribution": "..." }
}
Without payment this returns 402 with the price. With an x402 client such as @x402/fetch the same request returns the JSON above, trimmed here. The values are illustrative.
Price and MCP tools
| Endpoint | What it does | MCP tool | Price |
|---|---|---|---|
GET /v1/tenders | Search public tenders | search_tenders | $0.01 |
GET /v1/tenders/{id} | Get one tender | get_tender | $0.005 |
GET /v1/companies/{orgnr}/tenders | Tenders published by a company | get_company_tenders | $0.01 |
Per successful call, in USD, paid as USDC on Base. The MCP server is at https://veldora.no/mcp.
How payment works
Your agent sends a normal HTTP request and gets 402 Payment Required with the price. It signs a USDC authorization on Base for that amount and repeats the request, and Veldora returns the data with a receipt. There is no account or API key, and failed calls are not charged. See Pay per call and the payment section of the docs.
Questions
What is the licence of the tender data?
Doffin data is © DFØ and licensed under CC BY 4.0. TED data is © European Union and reused under Commission Decision 2011/833/EU. Each response carries the notice in meta.attribution.
How fresh is the data?
Tenders are refreshed every night from Doffin and TED. meta.as_of gives the date of the data. Responses flag stale data.
What happens if a call fails?
You are not charged for any response with status 400 or higher. Bad input is rejected with 400 before payment is asked for, and a 503 data_unavailable costs nothing.
Do I need an API key or an account?
No. Your agent pays per call in USDC on Base with the x402 protocol. There is nothing to sign up for.
Can my agent use this over MCP?
Yes. Connect to https://veldora.no/mcp and call search_tenders, get_tender or get_company_tenders. Listing the tools is free; each call is paid at the REST price.