Document toolboxDocument toolbox

(v3.0.1) Subscription notification interface

Het subscription notification interface hoort bij de hoofdfunctie Regie, terwijl het resource notification interface bij de hoofdfunctie Uitwisseling hoort.

1.De Notification Client en de Notification Server maken op de subscription notification interface gebruik van HTTP 1.1.

ext.abo.subnotint.200

2.De Notification Client verstuurt de subscription notification middels een HTTP POST van een Notification op het in de OAuth Client List aangetroffen Subscription Notification Endpoint.

ext.abo.subnotint.201

3.De subscription notification hanteert  de structuur: <base uri>/Notification  (zonder andere parameters in de URL).

ext.abo.subnotint.202

4.Voor Notificaties en foutmeldingen op het subscription notification interface gebruiken Notification Client en de Notification Server het formaat JSON.

ext.abo.subnotint.203

5.

De drie parameters in de subscription notification worden als volgt gevuld.

parameter

vulling

toelichting

subscription_id

De waarde waarmee de Subscription Server dit Abonnement in de subscription response heeft geïdentificeerd.Een gebeurtenis bij een Aanbieder kan theoretisch leiden tot meerdere Notificaties. Iedere Notificatie hoort echter bij precies één Abonnement.
notification_typeDe letterlijke waarde subscription.Zo kan de Notification Server de subscription notification van de resource notification onderscheiden.

end_date

De datum waarop het Abonnement afloopt en wordt beëindigd door de Aanbieder. Als deze waarde gelijk of kleiner is als de huidige (systeem)datum, dan is het Abonnement al beëindigd. In alle andere gevallen is deze waarde niet groter dan de huidige datum plus de maximale duur op basis van de Abonnementen-administratie van de Subscription Server.

Abonnementen kunnen zowel door Aanbieder als door Dienstverlener persoon worden beëindigd. Beëindiging door Dienstverlener Persoon verloopt via de subscription interface. Beëindiging door Aanbieder verloopt via de (v3.0.1) Subscription notification interface.

Met de mogelijkheid tot inkorting wordt de Aanbieder in gelegenheid gesteld beschikbaarheidsbeleid voortdurend te kunnen uitvoeren.

ext.abo.subnotint.204

6.

De enige parameter van de subscription notification response wordt als volgt gevuld.

parameter

vulling

toelichting

notification_id

identificatie waarmee de Notification Server de Notificatie uniek voor dit Abonnement identificeertDit kan bijvoorbeeld een integer waarde zijn, of een UUID, maar kan ook volgens een ander geldig ID-patroon worden gevuld.

ext.abo.subnotint.205

7.Na ontvangst van een subscription notification, zal de Notification Server, indien in antwoord daarop een subscription notification response dient te worden gedaan, na maximaal tien (10) seconden dit antwoord ter beschikking stellen aan de Notification Client. Dit gedrag van de Notification Server is gedurende minimaal 98,5% van de tijd beschikbaar.

ext.abo.subnotint.206

8.

Notification Server en Notification Client handelen uitzonderingssituaties inzake het subscription notification interface af volgens onderstaande tabel.

Nummer

Implementeert uitzondering

Uitzondering

Actie

Melding

Vervolg

Subscription notification interface 1Notificeren 1

Notification Server vindt de ontvangen Notification ongeldig.

Notification Server informeert Notification Client over deze uitzondering.

Conform HTTP specificatie met met status code 400 "Foute aanvraag", en met in de body de van toepassing zijnde error code ("invalid_subscription_id", "invalid_notification_type" of "invalid_duration")

Allen stoppen de flow onmiddellijk na geïnformeerd te zijn over de uitzondering.

Wanneer Notification Client een error "invalid_subscription_id" ontvangt, dan dient het Abonnement direct te worden beëindigd, en wel zonder hiervoor opnieuw een subscription notification te sturen.

Subscription notification interface 2Notificeren 2

Notification Server kan in de request niet, niet geheel of niet tijdig verwerken.

Notification Server informeert Notification Client over deze uitzondering.Conform HTTP specificatie met met status code 500 "Interne serverfout"Allen stoppen de flow onmiddellijk na geïnformeerd te zijn over de uitzondering.

ext.abo.subnotint.207