OpenAPI Specification

Uit NORA Online
FS:Openapi-specification
Naar navigatie springen Naar zoeken springen
07-12-2022: wij toetsen of de standaard OAS in de nieuwe versie (3.1) geschikt is om te blijven verplichten aan de overheid (‘pas toe of leg uit’-verplichting). De procedure is tijdelijk stilgelegd vanwege een aantal geconstateerde aandachtspunten
Voor zowel mensen als computers is het fijn als de documentatie van een API makkelijk te lezen is. In een OpenAPI Specification staan de eigenschappen van de data die een API als input accepteert en als output teruggeeft. De overheid en de publieke sector beschrijven deze specificaties volgens een vaste werkwijze. Zo wordt de documentatie voorspelbaar en de API's makkelijker te (her)gebruiken.
Over de standaard
Lijst status Verplicht (pas toe leg uit)
Beschrijving Beschrijven van REST APIs
Uitleg
Nut Een API is in de praktijk zo effectief als z'n documentatie. De documentatie van een API moet voor machines leesbaar en voor mensen begrijpelijk zijn. OAS 3.0 geeft ontwikkelaars van applicaties een eenduidige en leesbare beschrijving van een REST API waarmee zij de API kunnen gebruiken zonder te hoeven weten hoe deze geïmplementeerd is. OAS 3.0 zorgt voor gemakkelijker (her)gebruik van APIs en minder leveranciersafhankelijkheid.
Werking

Een OpenAPI Specification (OAS) beschrijft de eigenschappen van de data die een API als input accepteert en als output teruggeeft. OAS 3.0 specificeert alleen welke attributen de API verwerkt en hun datatypen, niet welke implementatie er achter de API schuilgaat. OAS 3.0 is dus een beschrijvende taal en heeft geen binding met specifieke programmeertalen. Een specificatie conform OAS 3.0 is een tekstbestand met een gestandaardiseerde YAML of JSON structuur. Daardoor is OAS zowel leesbaar voor machines als begrijpelijk voor mensen. Met OAS 3.0 kunnen zowel mensen als machines de dataset attributen van een REST API vinden, bekijken en verwerken zonder toegang tot de programmatuur en zonder aanvullende documentatie.

OAS 3.0 is zowel compatibel met de voorgaande versie OAS 2.0 als met de alternatieve standaard RAML (RESTful API Modeling Language) die ook veel gebruikt werd.
Waarvoor geldt de verplichting OAS moet worden toegepast op het beschrijven/specificeren van een REST API.
Aanvullende verplichtingen
Trefwoorden Ruimtelijke ordening, Basisregistraties, Bodem, Geo-informatie
Detailinformatie
Beheerorganisatie OpenAPI Initiative
Uitstekend beheerNee
Specificatiedocument https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md
Volledige naam OpenAPI Specification
Versie 3
Inkoop
Aandachtspunten
Sjabloon-bestektekst
CPV-code(s)
Implementatie
Conformiteitstest
Domein

Uitwisselingsfundament

Relatie met andere standaarden
Toelichting
Toetsingsinformatie
Hulpmiddelen

Om bestaande API specificaties om te zetten naar OAS3 zijn er verschillende converters die dit kunnen doen, hieronder enkele voorbeelden:

 

Ook is het mogelijk om het handmatig te doen, of na het omzetten alsnog handmatig te optimaliseren, zodat je bepaalde zaken die vaker terugkomen (bijv. een ‘id’ parameter) maar op één plek hoeft te specificeren en van daaruit kan hergebruiken. Dat scheelt aanzienlijk in het onderhoud. Bovendien kun je dan ook externe verwijzingen toevoegen en dezelfde zaken hergebruiken over meerdere APIs.

Daarnaast zijn er ook verschillende portals die op basis van OAS3 de bij behorende API documentatie kunnen leveren, dat kan bijvoorbeeld via:

 

Mocht je OAS bestanden willen creëren dan zijn er ook verschillende tools die hierbij kunnen helpen, dit kan bijvoorbeeld via:

 

Verder is het verschillende en documentatie en tooling voor het gebruik van de standaard te vinden en openbaar toegankelijk. Zie bijvoorbeeld: https://github.com/OAI/OpenAPI-Specification of op de website van de beheerorganisatie https://www.openapis.org/

Functioneel toepassingsgebied OAS moet worden toegepast op het beschrijven/specificeren van een REST API.
Organisatorisch werkingsgebied Nederlandse overheden (Rijk, provincies, gemeenten en waterschappen) en instellingen uit de (semi-) publieke sector.
Toelichting bij opname

Het Forum Standaardisatie heeft besloten, op basis van de expertbijeenkomst van 5 april 2023, om de toetsingsprocedure tijdelijk stil te leggen. De procedure wordt voortgezet zodra er voldoende voortgang is op de geconstateerde aandachtspunten.

Deze aandachtspunten zijn:

  • OAS 3.1 bevat breaking changes ten opzichte van OAS 3.0. OAS 3.1 is niet backward compatible met OAS 3.0;
  • er is onvoldoende (internationale) ondersteunende tooling beschikbaar om OAS 3.1 te implementeren en de transitie van OAS 3.0 naar OAS 3.1 soepel te laten verlopen;
  • op basis van bovenstaande twee redenen zijn de kosten voor de migratie van OAS 3.0 naar OAS 3.1 op dit moment nog te hoog;
  • er is internationaal nog weinig adoptie van OAS 3.1. Dit lijkt de ontwikkeling van goede ondersteunende tools tegen te werken.
Datum van aanmelding 2017-04-24
Datum van besluit 2018-05-25
Europese status (MSP) Nee
Documentatie
    Forum-Adviezen
    Advies aan beheerder
    Adoptieadviezen
    Leveranciers
    bijlagen:
    Copyright
    Door Forum Standaardisatie vrijgegeven onder Creative Commons zero