OSR:API/V2/API V2 naar V3 wijzigingen: verschil tussen versies

Uit Kennisnet Developers Documentatie
< OSR:API‎ | V2
Naar navigatie springen Naar zoeken springen
Regel 24: Regel 24:
! style="text-align:left;"| Wijzigingen API V3
! style="text-align:left;"| Wijzigingen API V3
|-
|-
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /boards/{bgeCode}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /boards/{bgeCode}
|  
|  
Regel 30: Regel 30:
* Responseveld "number" wordt "bgeCode"
* Responseveld "number" wordt "bgeCode"
|-
|-
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#49cc90;padding:6px 15px;border-radius:3px;">POST</span> /endpoints
| <span style="color:white;font-weight:bold;background-color:#49cc90;padding:6px 15px;border-radius:3px;">POST</span> /endpoints
|  
|  
Regel 36: Regel 36:
** HTTP 400: The given service version does not allow endpoint registrations 
** HTTP 400: The given service version does not allow endpoint registrations 
|-
|-
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /endpoints
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /endpoints
|  
|  
* Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug. 
* Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug. 
|-
|-
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">URI </span>
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">URI </span>
|  
|  
<span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;line-height:2.2em">GET</span> /endpoints/{uuid}<br>
<span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;line-height:2.2em">GET</span> /endpoints/{uuid}<br>
Regel 49: Regel 49:
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
|-
|-
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
| <span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</SPAN> /endpoints/available-routing-id
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</SPAN> /endpoints/available-routing-id
|
|
Regel 55: Regel 55:
* Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug.<br>
* Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug.<br>
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/services/{serviceCode}/schools/{oieCode}/suppliers/{supplierOin}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/services/{serviceCode}/schools/{oieCode}/suppliers/{supplierOin}
|  
|  
Regel 63: Regel 63:
* De parameters "serviceCode", "schoolOin" en "supplierOin" zijn verplicht en verplaatst naar de URI.
* De parameters "serviceCode", "schoolOin" en "supplierOin" zijn verplicht en verplaatst naar de URI.
|-
|-
|<span style="background-color:#cd8b1a;color:white;padding:0.5em;margin-right:0.5em">Nieuw</span>
|<span style="background-color:#cd8b1a;color:white;padding:0.5em;margin-right:0.5em;border-radius:3px;">Nieuw</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/services/{serviceCode}/boards/{bgeCode}/suppliers/{supplierOin}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/services/{serviceCode}/boards/{bgeCode}/suppliers/{supplierOin}
|  
|  
Regel 70: Regel 70:
* Responseveld _links.board { "href": "string" } bevat een link naar het bij het mandaat behorende schoolbestuur.
* Responseveld _links.board { "href": "string" } bevat een link naar het bij het mandaat behorende schoolbestuur.
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">URI</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
|<span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/{uuid}
|<span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /mandates/{uuid}
|  
|  
Regel 79: Regel 79:
* Responseveld "_links.school" geeft uiteraard alleen een waarde bij een mandaat op schoolniveau, anders is deze null.
* Responseveld "_links.school" geeft uiteraard alleen een waarde bij een mandaat op schoolniveau, anders is deze null.
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /schools
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /schools
|  
|  
Regel 85: Regel 85:
* Responseveld "brin" wordt omgezet naar "oieCode"
* Responseveld "brin" wordt omgezet naar "oieCode"
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Parameters</span><span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /schools/{oieCode}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /schools/{oieCode}
|  
|  
Regel 92: Regel 92:
* Responseveld "brin" wordt omgezet naar "oieCode"
* Responseveld "brin" wordt omgezet naar "oieCode"
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /school-mandates
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /school-mandates
|  
|  
* "school_oa_id" komt niet meer voor in responses.
* "school_oa_id" komt niet meer voor in responses.
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Parameters</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Parameters</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /services/{uuid}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /services/{uuid}
|  
|  
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Parameters</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Parameters</span>
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /service-versions/{uuid}
| <span style="color:white;font-weight:bold;background-color:#61affe;padding:6px 15px;border-radius:3px;">GET</span> /service-versions/{uuid}
|  
|  
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
* URI-parameter "{id}" wordt omgezet naar "{uuid}"
|-
|-
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em">Response</span>
|<span style="background-color:lightgrey;padding:0.5em;margin-right:0.5em;border-radius:3px;">Responses</span>
| <span style="color:white;font-weight:bold;background-color:#49cc90;padding:6px 15px;border-radius:3px;">POST</span> /service-versions/copy-endpoints-from-service-version
| <span style="color:white;font-weight:bold;background-color:#49cc90;padding:6px 15px;border-radius:3px;">POST</span> /service-versions/copy-endpoints-from-service-version
|  
|  

Versie van 19 mrt 2025 14:37

Wijzigingen van de OSR API V2 naar V3


Met de introductie van versie 3 van de OSR API zijn er verschillende wijzigingen doorgevoerd ten opzichte van versie 2.
Deze documentatie geeft een overzicht van de belangrijkste veranderingen, inclusief nieuwe functionaliteiten, verwijderde of aangepaste endpoints
en verbeteringen op het gebied van beveiliging en prestaties.


Deze pagina is bedoeld voor ontwikkelaars en technische beheerders die werken met de OSR API en hun implementaties willen upgraden naar de nieuwste versie.
Door de wijzigingen tijdig te begrijpen en door te voeren, zorg je ervoor dat je applicaties compatibel blijven en profiteren van de nieuwste optimalisaties.


Bekijk hieronder de gedetailleerde wijzigingen en aanbevelingen voor een soepele migratie.


Wijzigingen per API endpoint


Type wijzigingen URI Wijzigingen API V3
URIResponses GET /boards/{bgeCode}
  • URI-parameter "{id}" wordt omgezet naar "{bgeCode}"
  • Responseveld "number" wordt "bgeCode"
Responses POST /endpoints
  • Bij gebruik van het token van een mandaat, welke op bestuursniveau is aangemaakt geeft de API terug:
    • HTTP 400: The given service version does not allow endpoint registrations 
Responses GET /endpoints
  • Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug. 
URI

GET /endpoints/{uuid}
PUT /endpoints/{uuid}
DELETE /endpoints/{uuid}

  • URI-parameter "{id}" wordt omgezet naar "{uuid}"
URIResponses GET /endpoints/available-routing-id
  • Deze vervangt het API endpoint "GET available_routing_id".
  • Bij gebruik van de versie naamruimte van een dienst, welke alleen mandaten op bestuursniveau toestaat geeft de API een HTTP 200 met lege lijst terug.
URIParametersResponses GET /mandates/services/{serviceCode}/schools/{oieCode}/suppliers/{supplierOin}
  • Deze vervangt het API endpoint "GET /mandates"
  • Dit API endpoint geeft alleen mandaten op schoolniveau terug in de response;
  • De parameter "service_version_namespace" is verwijderd;
  • De parameters "serviceCode", "schoolOin" en "supplierOin" zijn verplicht en verplaatst naar de URI.
Nieuw GET /mandates/services/{serviceCode}/boards/{bgeCode}/suppliers/{supplierOin}
  • Dit API endpoint geeft alleen mandaten op bestuursniveau terug in de response;
  • De parameter "boardBgeCode" wordt gebruikt om het schoolbestuur te identificeren;
  • Responseveld _links.board { "href": "string" } bevat een link naar het bij het mandaat behorende schoolbestuur.
URIResponses GET /mandates/{uuid}
  • URI-parameter "{id}" wordt omgezet naar "{uuid}";
  • Zowel mandaten op school- als bestuursniveau worden teruggeven;
  • Responseveld _links.board { "href": "string" } bevat een link naar het bij het mandaat behorende schoolbestuur;
  • Responseveld "_links.board" is altijd gevuld, zowel bij een mandaat op school- als bestuursniveau;
  • Responseveld "_links.school" geeft uiteraard alleen een waarde bij een mandaat op schoolniveau, anders is deze null.
ParametersResponses GET /schools
  • "oa_id" komt niet meer voor als parameter en in responses.
  • Responseveld "brin" wordt omgezet naar "oieCode"
ParametersResponses GET /schools/{oieCode}
  • URI-parameter "{id}" wordt omgezet naar "{oieCode}"
  • "oa_id" komt niet meer voor als parameter en in responses.
  • Responseveld "brin" wordt omgezet naar "oieCode"
Responses GET /school-mandates
  • "school_oa_id" komt niet meer voor in responses.
Parameters GET /services/{uuid}
  • URI-parameter "{id}" wordt omgezet naar "{uuid}"
Parameters GET /service-versions/{uuid}
  • URI-parameter "{id}" wordt omgezet naar "{uuid}"
Responses POST /service-versions/copy-endpoints-from-service-version
  • Als de parameters "serviceVersionNamespaceToCopyTo" óf "serviceVersionNamespaceToCopyFrom" betrekking hebben op een dienst welke alleen mandaten op bestuursniveau toestaat geeft de API terug:
    • HTTP 400: The given service version(s) do not allow endpoint registrations

Algemene aandachtspunten


  • Alle responsevelden worden in V3 teruggegeven in camelCase in plaats van snake_case in V2
  • Het is aanvankelijk niet mogelijk om endpoints aan te maken voor mandaten op bestuursniveau