Versions Compared

Key

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

...

Er moeten links worden voorzien zodat de client door de verschillende pagina’s met attesten en vergunningen kan navigeren. Zie ook HATEOAS voor meer informatie en voorbeelden.

De response moet altijd een paginering hebben. De metadata bij de pagina’s moet deel uitmaken van de payload zodat de client weet hoeveel attesten en vergunningen er zijn, op welke pagina’s die staan, enz. Zie ook de voorbeelden hieronder.

  • The DE URL heeft een page-parameter, die 0-based moet zijn. Zodra 0 is gepasseerd, moet de eerste pagina worden meegegeven.

  • In de metadata van de pagina is er echter niets 0-based, alleen 1-based. Bijv. de number-parameter moet op de eerste pagina de waarde 1 hebben.

...

  • certificates (verplicht): lijst met attesten , eigenlijk een lijst met inclusief de detailinformatie over de attesten en vergunningen (zie hieronder).

Note

Worden er geen attesten of vergunningen gevonden voor het INSZ-nummer, dan moet de lijst leeg zijn.

Request (voorbeeld)

  • HeadersAuthorization: Bearer XyZAbCd1234

  • Method: GET

...

  • URL https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0

Response (voorbeeld)

Code Block
{
  "certificates": [
    {
      "id": "85144567-7043-4469-9e79-279f4eb31e27",
      "language" : "nl",
      "name": "Dienstencheques 2019",
      "year": 2019,
      "links": [
        {
          "rel": "self",
          "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl"
        },
        {
          "rel": "download",
          "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/nl/download"
        }
      ]
    }
  ],
  "pageMetadata": {
    "number": 1,
    "size": 10,
    "totalElements": 40,
    "totalPages": 4
  },
  "links": [
    {
      "rel": "self",
      "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
    },
    {
      "rel": "next",
      "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=1"
    },
    {
      "rel": "start",
      "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0"
    },
    {
      "rel": "last",
      "href": "https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=3"
    }
  ]
}

...

De response moet gepagineerd zijn voor elke collection die wordt meegegeven. De volgende 2 parameters in de URL’s moeten hiervoor aanwezig zijn: I

  • page: het paginanummers paginanummer (0-based)

  • limit: het aantal items op 1 pagina (1-based)

Gepagineerde resultaten zijn natuurlijk alleen nodig wanneer er het resultaat een collectie als resultaat is. Voor 1 attest/vergunning + details is er een geen paginering nodig.

Info

Worden er geen attesten of vergunningen gevonden voor het INSZ-nummer, dan moet de lijst leeg zijn.

...

De API-client kan de parameter met de grenswaarde controlerenbepalen. Als de client 10 items vraagt, dan moeten er 10 worden gegeven. Vraagt de client er 50, dan moeten er 50 worden gegeven.

Er kan natuurlijk een maximumwaarde worden bepaald. Werk We raden aan om met een maximumwaarde van 100 items te werken. Vraagt de client om meer resultaten dan die in de maximumwaarde, dan wordt de default maximumwaarde getoond.

...

Bij gebrek aan defaults voor de paginering (page) en maximumwaarde (limit) moet de API terugvallen op redelijk defaults.

De onderstaande requests zijn dus perfect bruikbaar:

...