Reimbursement groups
v1 (
/api/v1/*) is authenticated with theX-API-KEYheader; v2 (/api/v2/*) with a HelseID access token (DPoP). See Authentication. Shared topics: response format, status codes and rate limiting.
GET /api/v1/reimbursement-group
Returns reimbursement group data (legal basis, indications, covered products). Supports filtering and version-based diff queries.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
since-version |
long |
No | If provided, returns only items changed since this version. If omitted, returns all active items. |
versioned |
bool |
No | Default false. When false (and since-version is omitted), returns the unversioned response shape (no currentVersion/version/lastChanged/isDeleted). When true, returns the versioned envelope documented below. Ignored — treated as true — whenever since-version is provided. Not listed in Swagger/OpenAPI; kept for backward compatibility with existing integrations. |
indication |
string |
No | Returns active reimbursement groups that contains the indication code. |
ignore-fest-validation |
bool |
No | Default false. When false, products without a resolved FEST match are dropped from each group's products array. A group that had at least one product before filtering but is left with zero afterward is omitted entirely; a group with no products to begin with is unaffected. When true, returns all products unfiltered and adds isInFest to each product. |
Response
Default (no since-version, no versioned=true) — unversioned shape:
{
"entries": [
{
"reimbursementGroup": {
"id": "...",
"legalBasis": {
"coding": [
{
"system": "...",
"code": "950",
"display": "H-resept"
}
]
},
"indications": [
{
"coding": [
{
"system": "...",
"code": "G35",
"display": "Multiple sclerosis"
}
]
}
],
"products": [
{
"identifiers": [
{
"type": "FEST/LegemiddelPakning/Varenummer",
"value": "166028",
"display": "Ocrevus 300 mg/1 ml koncentration til injeksjonsvæske, injeksjonssprøyte"
},
{
"type": "FEST/LegemiddelPakning/Id",
"value": "3F2504E0-4F89-11D3-9A0C-0305E82C3301",
"display": "Ocrevus 300 mg/1 ml koncentration til injeksjonsvæske, injeksjonssprøyte"
},
{
"type": "FEST/LegemiddelMerkevare/Id",
"value": "7C9E6679-7425-40DE-944B-E07FC1F90AE7",
"display": "Ocrevus 300 mg/1 ml koncentration til injeksjonsvæske, injeksjonssprøyte"
},
{
"type": "FEST/LegemiddelVirkestoff/Id",
"value": "E4EAAAF2-D142-11E1-B3E4-080027620CDD",
"display": "Ocrelizumab"
}
]
}
]
}
}
]
}
With versioned=true or since-version — versioned shape (same reimbursementGroup object,
wrapped with version metadata):
{
"currentVersion": 5,
"entries": [
{
"reimbursementGroup": { ... },
"version": 5,
"lastChanged": "2025-04-10T08:30:00Z",
"isDeleted": false
}
]
}
Behavior is identical to the treatment-group endpoint. The products array is empty if upstream provides no article number for the authorization.
Example
# Get all (unversioned, default)
curl -H "X-API-KEY: key" \
https://api.example.com/api/v1/reimbursement-group
# Get all (versioned envelope)
curl -H "X-API-KEY: key" \
"https://api.example.com/api/v1/reimbursement-group?versioned=true"
# Get changes since version 3 (always versioned)
curl -H "X-API-KEY: key" \
https://api.example.com/api/v1/reimbursement-group?since-version=3
# Filter on indication code
curl -H "X-API-KEY: key" \
https://api.example.com/api/v1/reimbursement-group?indication=G35
GET /api/v1/reimbursement-group/
Returns a reimbursement group (legal basis, indications, covered products).
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string |
Yes | Returns an active reimbursement group with matching id. |
versioned |
bool |
No | Default false. When false, returns the plain reimbursementGroup object without version/lastChanged/isDeleted. When true, wraps the response with version metadata (see below). Not listed in Swagger/OpenAPI; kept for backward compatibility with existing integrations. |
ignore-fest-validation |
bool |
No | Default false. When false, products without a resolved FEST match are dropped. 404 Not Found is returned only if the group had at least one product before filtering but is left with zero afterward; a group with no products to begin with is returned unaffected. When true, returns all products unfiltered and adds isInFest to each product. |
Response
Default (no versioned=true) — unversioned shape:
{
"reimbursementGroup": {
"id": "...",
"legalBasis": {
"coding": [
{
"system": "...",
"code": "950",
"display": "H-resept"
}
]
},
"indications": [
{
"coding": [
{
"system": "...",
"code": "G35",
"display": "Multiple sclerosis"
}
]
}
],
"products": [
{
"identifiers": [
{
"type": "FEST/LegemiddelPakning/Varenummer",
"value": "166028",
"display": "Ocrevus 300 mg/1 ml koncentration til injeksjonsvæske, injeksjonssprøyte"
}
]
}
]
}
}
With versioned=true — adds the version metadata around the same reimbursementGroup object:
{
"reimbursementGroup": { ... },
"version": 5,
"lastChanged": "2025-04-10T08:30:00Z",
"isDeleted": false
}
HelseID (v2) endpoints
The v2 endpoints return the same data as their v1 counterparts, authenticated with HelseID.
GET /api/v2/reimbursement-group
Returns reimbursement group data. Supports the same filtering and version-based diff queries as GET /api/v1/reimbursement-group.
Parameters
Identical to GET /api/v1/reimbursement-group (since-version, versioned, indication, ignore-fest-validation).
Response
Same envelope and entry shape as GET /api/v1/reimbursement-group.
Example
curl -H "Authorization: DPoP <access-token>" \
-H "DPoP: <proof-jwt>" \
https://api.example.com/api/v2/reimbursement-group?indication=G35
GET /api/v2/reimbursement-group/
Returns a single reimbursement group. Same id parameter and response shape as GET /api/v1/reimbursement-group/{id}.
Schema
Field types marked as links are described in Shared types.
ReimbursementGroup
Represents a reimbursement group: the legal basis (hjemmel) and the indications (diagnoses) it covers.
{
"id": "string",
"legalBasis": CodeableConcept,
"indications": [ CodeableConcept ],
"products": [ ProductReference ]
}
| Field | Type | Description |
|---|---|---|
id |
string |
Unique identifier for the reimbursement group |
legalBasis |
CodeableConcept |
Legal basis (hjemmel) for reimbursement, e.g., H-resept §950. Single CodeableConcept allows the same hjemmel to be expressed in multiple code systems |
indications |
CodeableConcept[] |
Diagnoses (typically ICD-10) eligible under this hjemmel. Each indication is its own CodeableConcept so a single indication can carry multiple parallel codings |
products |
ProductReference[] |
Products covered by this reimbursement group. Empty if upstream provides no article number |
The model is intentionally hjemmel-agnostic — it can represent H-resept §950, §951, §952 (without indications), or future schemes such as blåresept.