ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

Parameters — Operation parameter container

Parameters is not a resource in the classical sense (no search, no history). It is the pivot format to pass arguments to FHIR $ operations.

Purpose

Parameters carries a named collection of typed values and/or resources. Used as input for $validate, $expand, $everything, $lookup and any operation defined by OperationDefinition. Also used as output when the operation returns multiple values.

Key fields

FieldTypeCardinalityRole
parameterBackboneElement[]0..*Named parameter list.
parameter.namestring1..1Parameter name.
parameter.value[x]any data type0..1Typed primitive value (valueString, valueDate, valueQuantity...).
parameter.resourceResource0..1Embedded resource value.
parameter.partBackboneElement[]0..*Nested parameters (composite).

JSON example

Parameters for Patient/$everything with dates:

json parameters-example.json
{
  "resourceType": "Parameters",
  "parameter": [{
    "name": "patient",
    "resource": {
      "resourceType": "Patient",
      "id": "example",
      "name": [{ "family": "Doe", "given": ["John"] }]
    }
  }, {
    "name": "start",
    "valueDate": "2026-01-01"
  }, {
    "name": "end",
    "valueDate": "2026-12-31"
  }]
}

Common pitfalls

  • Stored in DB as a resource: Parameters MUST NOT be persisted. It is an operation message.
  • parameter cardinality: the OperationDefinition imposes cardinalities; violating them returns 400 server-side.
  • Mixing value[x] / resource / part: only one of the three per parameter.
  • OperationDefinition — Defines expected parameters.
  • OperationOutcome — Operation outcome.
  • Bundle — For transactions and search batch (other container).