Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Wat

Notificaties zijn berichten bedoeld ter ondersteuning van de business processen binnen het GIPOD-systeem. De bestemmeling van een notificatie is steeds een organisatie gekend binnen het GIPOD-systeem. Op basis van een notificatie wordt een organisatie verwittigd van een bepaalde gebeurtenis binnen het GIPOD-systeem zodat deze kan nagaan of er al dan niet een actie moet worden ondernomen.

Notificatie flow

GIPOD voorziet in een systeem van passieve notificaties. Dit is een pull systeem waarbij een organisatie relevante notificaties komt ophalen in het GIPOD-systeem.

...

Notificatie bericht

Een notificatie bevat volgende informatie:

  • Id:

    • Unieke identificator van de notificatie (Guid)

  • Category:

    • Categorie van de notificatie.

    • Mogelijke waarden:

      • Informatie.

      • Waarschuwing.

      • Taak.

  • NotificatieType:

    • Type van de notificatie.

  • OrganisationId:

    • De organisatie waarvoor de notificatie bestemd is.

    • Indien de OrganisatieId niet is ingevuld betreft het een notificatie die voor alle organisaties relevant zijn.

  • Data:

    • Lijst van sleutelwaarden met extra informatie voor deze notificatie.

    • De mogelijke sleutelwaarden verschillen per notificatie type.

  • CreatedOn:

    • Tijdstip waarop de notificatie werd aangemaakt door het GIPOD-systeem.

  • ExpiresOn:

    • Tijdstip waarop de notificatie zal verwijderd worden uit het GIPOD-systeemniet meer zal beschikbaar zijn in de zoek resultaten.

  • Status:

    • Bij aanmaak van een notificatie krijgt deze de status: Nieuw.

Api

Volgende functionaliteiten worden voorzien:

  • Taxonomieën

    • Opvragen van de beschikbare notificatie types.

    • Opvragen notificatie categoriën.

    • Opvragen notificatie statussen.

  • Zoeken notificaties op basis van filter criteria.

  • Opvragen detail van een bepaalde notificatie.

  • Aanpassen status van een bepaalde notificatie.

Opvragen notificatie types

Opvragen van de beschikbare notificatie types.

  • GET api\v1\taxonomies\notificationtypes

  • GET api\v1\taxonomies\notificationtypes\{notificationtypeid}

Opvragen notificatie categorieën

Volgende categorieën worden voorzien:

...

  • GET api\v1\taxonomies\notification-categories

  • GET api\v1\taxonomies\notification-categories\{notificationcategoryid}

Opvragen notificatie statussen

Volgende statussen worden voorzien:

...

  • GET api\v1\taxonomies\statuses

  • GET api\v1\taxonomies\statuses\{notificationstatusid}

Zoeken notificaties

Zoeken notificaties bestemd voor de geautentiseerde organisatie. Vervallen notificaties worden niet teruggeven in het resultaat.

...

  • organisationId:

    • lijst van organisatie id’s.

    • organisatie id’s zijn organisatie binnen de organisatie structuur van de inlogde organisatie.

  • notificationTypeIdtypeId

    • lijst van notificatietype id’s

  • notificationCategoryIdcategoryId

    • lijst van notificatie categorie id’s

  • createdOn

    • start

    • end

  • statusId

    • lijst van notificatie status id’s

...

Code Block
{
  "@context": "http://www.w3.org/ns/hydra/context.jsonld",
  "@id": "\api\v1\notifications",
  "@type": "Collection",
  "totalItems": "23",
  "member": [
    {
      "@id": "api\v1\notifications\a26e477c-f10b-4d7f-bba9-60228e092b75",
      notificationType": {
		"id":"api\v1\taxonomies\notificationtypes\eafe63a5-cbea-4a24-b16b-9932b9a2f324",
		"prefLabel":"TrenchSynergyRequestReceived",
	  }
    },
    {
      "@id": "\api\v1\notifications\d454970a-35d5-41c9-a832-dc940c061e17",
      notificationType": {
		"id":"api\v1\taxonomies\notificationtypes\eafe63a5-cbea-4a24-b16b-9932b9a2f324",
		"prefLabel":"TrenchSynergyRequestReceived",
	  }
    },
    ...
  ]
}

Opvragen detail van een notificatie

Endpoint:

  • GET api\v1\notifications\{notificationid}

...

Code Block
languagetext
{
  "@id":"api\v1\notifications\8bc826d8-645b-4926-b4dd-1cfbeea6d289",
  "value":"8bc826d8-645b-4926-b4dd-1cfbeea6d289",
  "notificationCategorycategory": {
      "@id": "api\v1\taxonomies\notification-categories\e20f39f9-a2d8-4161-8a4a-fe1d3b9b17af",
      "prefLabel":"Information"
  },
  "notificationTypetype": {
      "@id":"api\v1\taxonomies\notificationtypes\eafe63a5-cbea-4a24-b16b-9932b9a2f324",
      "prefLabel":"TrenchSynergyRequestReceived"
  },
  "organisation": {
      "@id":"api\v1\organisations\17596932-6e85-4103-b037-824bbfcd74d0",
      "preferredName":"Agentschap Informatie Vlaanderen"
  },
  "data": [{
      "key":"TrenchSynergyRequest",
      "value":"api\v1\groundworks\2345\trench-synergy-requests\1"
  }],
  "createdOn":"2020-04-07T06:57:39Z",
  "expiresOn":"2020-05-07T06:57:39Z",
  "status": {
      "@id":"api\v1\taxonomies\statuses\48c22307-fce2-41c9-910a-b57f5b471246",
      "prefLabel":"Behandeld"
  }
}

Aanpassen status notificatie

Nadat een organisatie een notificatie behandeld heeft kan de organisatie de status aanpassen van de notificatie. De status van een notificatie is steeds op het niveau van de organisatie.

...