Ga naar inhoud

STD-0002: API-versiebeheer en compatibiliteit

Documentgegevens

Versie Datum Evaluatiedatum Scope
0.1 2026-08-25 2027-08-25 Organisatiebreed

Doel en reikwijdte

Deze standaard maakt wijzigingen aan API-contracten voorspelbaar voor producenten en consumenten. Zij geldt voor extern gebruikte API's en API's tussen teams. Interne, uitsluitend binnen één deploymenteenheid gebruikte interfaces kunnen gemotiveerd buiten scope vallen.

Normatieve bepalingen

  • Iedere API in scope MOET een expliciet, machineleesbaar contract en een herkenbare major contractversie hebben.
  • Een API MOET binnen één CIZ-profiel consequent hetzelfde versioneringsmechanisme gebruiken; pad, header en mediatype MOGEN NIET willekeurig worden gemengd.
  • Een incompatibele contractwijziging MOET een nieuwe major krijgen. Backward-compatible toevoegingen MOGEN binnen dezelfde major worden gepubliceerd.
  • Bestaande geldige requests en gedocumenteerde responsevelden MOETEN binnen een ondersteunde major compatibel blijven.
  • Consumenten BEHOREN onbekende optionele responsevelden te tolereren.
  • Foutresponses MOETEN een stabiele niet-gevoelige foutcode, menselijke samenvatting en correlation ID bevatten. RFC 9457 is de voorkeursbasis totdat een CIZ-API-profiel anders bepaalt.
  • Breaking changes MOETEN vooraf worden gepubliceerd met impact, migratiepad, tijdlijn en beëindigingsdatum.
  • Producenten MOETEN contract, compatibiliteitstests, changelog en deprecationcommunicatie onderhouden.
  • Consumenten MOETEN bewust een major kiezen, contracttests uitvoeren en binnen de afgesproken termijn migreren.
  • Tijd- en tekstvelden MOETEN voldoen aan STD-0001.

Rationale

Expliciete majorversies begrenzen incompatibele wijzigingen en geven ketenpartners een beheersbaar migratiepad. Een versie per productrelease veroorzaakt onnodige varianten; volledig onversiede contracten maken breaking changes onvoldoende zichtbaar.

Uitzonderingen en risicoacceptatie

Een uitzondering MOET API, consumenten, reden, compatibiliteitsrisico, migratieactie, eigenaar en einddatum bevatten. Een spoedwijziging vanwege een actief beveiligingsrisico KAN een verkorte termijn krijgen, mits impact en communicatie aantoonbaar zijn beoordeeld.

Naleving en vereiste bewijslast

  • gepubliceerd machineleesbaar contract en versiebeleid;
  • contractlinting en consumer/provider-contracttests;
  • compatibiliteitsdiff in CI;
  • changelog, deprecationmelding en gebruikstelemetrie;
  • controle op gestandaardiseerde, niet-gevoelige foutresponses.

Implementatieprofielen

Een CIZ-API-profiel MOET nog vastleggen waar de majorversie wordt geplaatst, welke RFC 9457-extensies gelden en welke standaardtermijnen worden gebruikt. Tot die vaststelling MOET een oplossing de gekozen conventie expliciet documenteren en consistent toepassen.

Externe mappings en bronnen

Kader Versie Control(s) Relatie Status
ISO/IEC 27002 2022 8.26, 8.27, 8.32 Beveiligingseisen, veilige architectuur en wijzigingsbeheer Ondersteunend
BIO2 1.3 8.26, 8.27, 8.32 Overheidsbaseline Ondersteunend
NEN 7510-2 2024+A1:2026 8.26, 8.27, 8.32 Zorgspecifieke aansluiting Te valideren
RFC 9457 2023 n.v.t. Problem Details voor HTTP API's Voorkeursreferentie

Wijzigingshistorie

Versie Datum Wijziging
0.1 2026-08-25 Eerste concept, omgezet van voorgestelde ADR naar standaard.