Publisert - 04.11.2026

Reimbursement groups

v1 (/api/v1/*) is authenticated with the X-API-KEY header; 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.

Søk i Utviklerportalen

Søket er fullført!