GnistAI GnistAI
Log in

Doffin (Norwegian Public Procurement)

Norwegian public procurement notices from Doffin — search tenders, contract awards, and planning notices across all Norwegian public sector buyers.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 4 tools tools 4 4 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Government

Data source: Doffin (DFØ — Direktoratet for forvaltning og økonomistyring)

REST Bridge Endpoint https://context.gnist.ai/rest/doffin/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (4)

search_notices

Search Norwegian public procurement notices on Doffin (doffin.no).

Doffin is Norway's national database for public procurement (offentlige anskaffelser).
Covers all Norwegian public tenders — both below and above EU/EEA threshold values.
Includes municipalities, county authorities, state agencies, and public enterprises.

At least one filter parameter is required. Combine filters to narrow results
(e.g. text='IKT' + location='NO03' for IT procurement in Oslo).

Returns:
Paginated list of procurement notices with heading, buyer, deadline, estimated
value, CPV codes, and Doffin URL. Use the notice ID with get_notice for
full details including buyer address, procedure type, and award information.

ParameterTypeRequiredDescription
textanyoptionalFree text search across notice titles and descriptions (e.g. "IKT", "rådgivning", "konsulentbistand", "veibygging").
statusanyoptionalFilter by notice status: 'ACTIVE' (open for bids), 'EXPIRED' (deadline passed), 'AWARDED' (contract awarded), 'CANCELLED'.
notice_typeanyoptionalFilter by notice type: 'COMPETITION' (open tender), 'RESULT' (award notice), 'PLANNING' (prior information), 'MODIFICATION', 'CORRIGENDUM'.
cpv_codeanyoptionalFilter by CPV (Common Procurement Vocabulary) code — 8-digit EU classification (e.g. '72000000' for IT services, '45000000' for construction).
locationanyoptionalFilter by Norwegian NUTS region code: 'NO03' (Oslo), 'NO08' (Vestland), 'NO0A' (Trøndelag), 'NO07' (Vestfold og Telemark), etc.
pageintegeroptionalPage number, 1-based (default 1). (default: 1)
page_sizeintegeroptionalResults per page (1-50, default 20). (default: 20)
Request Body
{
  "query": "example"
}
get_notice

Get detailed information about a specific Doffin procurement notice.

Returns the full notice including buyer details (name, org number, address),
procedure type, competition documents URL, award information, and whether
the notice was also published on TED (EU procurement).

Returns:
Detailed notice with buyer, procedure, value, and award information.
Returns found=false if the notice ID is not found.

ParameterTypeRequiredDescription
notice_idstringrequiredDoffin notice ID in format YYYY-NNNNNN (e.g. "2026-105515"). Found in search results.
Request Body
{
  "notice_id": "example"
}
get_doffin_changes

Get recent changes to Norwegian public procurement tenders from Doffin.

Returns field-level diffs (before/after values) for tenders whose data
changed between periodic snapshot cycles. The system monitors active,
awarded, and cancelled tenders every 6 hours.

Tracks: deadline changes, status transitions (active→awarded/cancelled),
estimated value updates, heading/description changes.

Args:
since: ISO 8601 timestamp — return changes captured after this time.
limit: Maximum number of changes to return (1–100, default 50).

Returns:
Object with count and list of change records, each containing
entity_id (notice ID), changed_at timestamp, and a list of
field changes with before/after values.

ParameterTypeRequiredDescription
sincestringrequiredISO 8601 timestamp — return changes captured after this time (e.g. "2026-04-01T00:00:00Z").
limitintegeroptionalMaximum number of changes to return (1–100, default 50). (default: 50)
Request Body
{
  "since": "example"
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
Request Body
{
  "feedback": "example"
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/rest/doffin/get_notice" \
  -H "Content-Type: application/json" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"notice_id": "example"}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/rest/doffin/get_notice",
    headers={"Gnist-API-Key": "YOUR_API_KEY"},
    json={
  "notice_id": "example"
},
)
print(resp.json())

Related Toolkits (Government)

Resources