Skip to content

Publiceer 2.2.0 ter consultatie#311

Draft
TimvdLippe wants to merge 56 commits intomainfrom
consultatie/2026-03-API-Design-Rules
Draft

Publiceer 2.2.0 ter consultatie#311
TimvdLippe wants to merge 56 commits intomainfrom
consultatie/2026-03-API-Design-Rules

Conversation

@TimvdLippe
Copy link
Contributor

No description provided.

erwinkramer and others added 30 commits May 14, 2025 09:58
Hiermee zijn we in lijn met de (recente) versie van de tekst die
alle 3.X versies toe staat, zodat de versie op de PTOLU-lijst leidend
is. Ook checken we nu of het veld wel is opgegeven.

Fixes #224
Dit is een follow-up voor #224 waarin ook de tests
voor de linter zijn geschreven.
Deze regel blijkt controversieel en behaald daarmee niet het doel
ter bevordering van adoptie van het publiceren van `openapi.json`.
Co-authored-by: Dimitri van Hees <info@dimitrivanhees.com>
Deze styling wordt voor de ADR core en alle modules gebruikt
* werkend

* Test en README

* toevoegen aan matrix

* rename bash script

* python dependencies

* Verwijder hernoemingoverblijfsel
Co-authored-by: Alexander Green <alexander.green@logius.nl>
Maak duidelijk dat het UpperCamelCase is om verwarring te
voorkomen met lowerCamelCase.
De belangrijkste wijzigingen zijn:

- Op sommige plaatsen waar eerst BCP 14-termen bijna werden gebruikt
  worden ze nu helemaal gebruikt ("SHOULD not" -> "SHOULD NOT").
- Samentrekkingen ("don't" -> "do not") zijn uitgeschreven.

De betekenis is onveranderd.
Hiermee gebruiken we de separate plugin voor rules, zodat die kan
worden gedeeld tussen ADR core en ADR modules. Omdat een module
deferred is, moeten we de rest ook laden als modules.

Tevens gebruiken we een nieuwe organisation-config.mjs zodat
de hoeveelheid boilerplate in de index.html een stuk minder is.
Dit kwam als feedback uit de internet consultatie voor versie 2.1
en kwamen we zelf ook tegen bij het bouwen van de nieuwe ADR
modulen. Hiermee automatiseren we volledig de summary, zodat deze
ook niet voor komt in de table of contents.
De naming-conventions zijn ontwikkeld als onderdeel van
het kennisplatform APIs als aparte module. Deze commit
integreert de conventions in de standaard als rules
om overhead te voorkomen en alle rules verplicht te
maken (in tegenstelling tot een module die niet altijd
nodig is).

Paths moeten kebab-case zijn, wat al door de linter
werd geenforceerd en standaard is in OpenAPI
specificaties. Queries daarentegen moeten camelCase
zijn, wat ook standaard is in OpenAPI specificaties.

Co-authored-by: Alexander Green <alexander.green@logius.nl>
Hiermee maken we duidelijk hoe Semantic Versioning wordt
toegepast met betrekking tot nieuwe design rules. Dit voorkomt
de situatie dat elke nieuwe design rule een major release tot
gevolg heeft.

Co-authored-by: Alexander Green <alexander.green@logius.nl>
Er is geregeld onduidelijkheid over het gebruik van Engels in API's.
Deze regel is geschreven om verwarring bij vertalingen te
voorkomen als het om officiele Nederlandse termen gaat die
bijvoorbeeld in wetteksten zijn gedefinieerd.

Maak dit explicieter door naar wetteksten en officiele
overheidscommunicatie te refereren.
Hiermee genereert Respec een link naar het specifiek example.
…uratie (#269)

Hiermee weet de linter configuratie nu waar de documentatie staat hoe
men aan de regel kan voldoen. Dit kan door tooling worden gebruikt
om te linken naar de kennisbank als er fouten worden gevonden in
OpenAPI specificaties.
Dit maakt meer gebruik van parallelisatie, omdat de
build niet nodig is voor het draaien van Spectral tests.
De 2025 guidelines zijn de nieuwste versie en de 2021
versie is daardoor outdated.
Deze testcase miste nog. Hiermee zorgen we ervoor dat het duidelijk
is waarom `nlgov:missing-version-header` als aparte regel bestaat,
omdat anders OpenAPI specificaties zonder de header ook goedgekeurd
zouden worden.
dependabot bot and others added 23 commits November 17, 2025 09:43
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
De nieuwste versie van markdownlint geeft hier
nu errors voor.
)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.39.0 to 0.45.0.
- [Commits](golang/crypto@v0.39.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [body-parser](https://github.com/expressjs/body-parser) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/expressjs/body-parser/releases)
- [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md)
- [Commits](expressjs/body-parser@v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: body-parser
  dependency-version: 2.2.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [express](https://github.com/expressjs/express) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](expressjs/express@v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: express
  dependency-version: 5.2.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [validator](https://github.com/validatorjs/validator.js) from 13.15.20 to 13.15.23.
- [Release notes](https://github.com/validatorjs/validator.js/releases)
- [Changelog](https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md)
- [Commits](validatorjs/validator.js@13.15.20...13.15.23)

---
updated-dependencies:
- dependency-name: validator
  dependency-version: 13.15.23
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Hiermee maken we het expliciet dat ook de HTTP methods
die enkel (metadata) informatie ophalen toegestaan zijn.
Deze methoden maken geen wijzigingen of lezen resources uit,
maar kunnen gebruikt worden om informatie over het endpoint
zelf uit te lezen.
…#245)

Hiermee makene we duidelijk dat de CORS regel is geschreven per
resource in plaats van per API. Daarmee kunnen we expliciet maken
dat de `openapi.json` resource bijvoorbeeld publiekelijk beschikbaar
moet zijn.

Ook voegen we een noot toe die omissie van de header expliciet maakt
als de resource enkel door de eigen origin wordt gebruikt.
Er zijn in het API register ook geen API's die dit hebben. Bij
het afgelopen TO is gevraagd om deze verscherping.

Tevens is de linter regel weer toegevoegd. Die is onverhoopt bij
het mergen van de vorige PR verdwenen. Nu staat hij er weer,
inclusief wat test cases.
Hiermee worden ze officieel vastgesteld als normatieve modules
voor alle REST API's. Op dit moment zijn ze enkel normatief
binnen het REST API profiel van Digikoppeling. De modules zijn
al vastgesteld bij het kennisplatform en als onderdeel van
Digikoppeling, maar niet als losstaande documenten.
Dit zorgt ervoor dat we naar de laatste versies
verwijzen, vergelijkbaar wat we doen met de
modules.
Bumps [qs](https://github.com/ljharb/qs) from 6.14.0 to 6.14.1.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](ljharb/qs@v6.14.0...v6.14.1)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Hiermee worden automatisch de juiste labels toegevoegd, alsmede
dat het voor het technisch overleg API's geagendeerd moet worden.
Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](ljharb/qs@v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ajv](https://github.com/ajv-validator/ajv) from 8.17.1 to 8.18.0.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](ajv-validator/ajv@v8.17.1...v8.18.0)

---
updated-dependencies:
- dependency-name: ajv
  dependency-version: 8.18.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Dit is consistent met hoe IETF refereert naar RFCs
Hiermee bereiken we twee doelen:
1. De naamgeving is niet gelimiteerd aan Spectral, omdat ook andere
tooling deze configuratie kan gebruiken
2. Omdat het nu in `media/` staat, publiceren we deze configuratie
nu ook op een aparte plek. Hierdoor is het mogelijk om voor andere
tooling om automatisch het bestand te pakken, in plaats van die
uit een bijlage van het standaarddocument te halen

Uiteindelijk zorgen we ervoor dat tooling zoals developer.overheid.nl
nu naar deze configuratie kunnen verwijzen en ook automatisch
up-to-date zijn met wijzigingen die we aanbrengen.
#277)

Co-authored-by: Alexander Green <alexander.green@logius.nl>
Co-authored-by: Tim van der Lippe <TimvdLippe@users.noreply.github.com>
Co-authored-by: PHaasnoot <50872565+PHaasnoot@users.noreply.github.com>
De `.yml` bestanden worden niet gepubliceerd,
maar `.yaml` bestanden wel. Waarschijnlijk omdat
GitHub pipeline configuraties `.yml` zijn die eruit
worden gefilterd.
Co-authored-by: Tim van der Lippe <Tim.Lippe@logius.nl>
Co-authored-by: Joost Farla <joostfarla@users.noreply.github.com>
Co-authored-by: Tim van der Lippe <Tim.Lippe@logius.nl>
Co-authored-by: Joost Farla <joostfarla@users.noreply.github.com>
Co-authored-by: Dimitri van Hees <dimitri@vanhees.tech>
@github-actions github-actions bot added Status: In bewerking Het voorstel is in bewerking bij de beheerorganisatie. Overleg: TO-API Te agenderen voor het Technisch Overleg API labels Mar 9, 2026
@github-actions
Copy link

github-actions bot commented Mar 9, 2026

@TimvdLippe TimvdLippe requested a review from sanderke March 9, 2026 13:36
@github-actions github-actions bot added Status: Ter goedkeuring Het voorstel is uitgewerkt en wordt ter goedkeuring aangeboden. and removed Status: In bewerking Het voorstel is in bewerking bij de beheerorganisatie. labels Mar 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Overleg: TO-API Te agenderen voor het Technisch Overleg API Status: Ter goedkeuring Het voorstel is uitgewerkt en wordt ter goedkeuring aangeboden.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants