Versions Compared

Key

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

...

OpenAPI-specificaties

Swagger integration
openapi: 3.0.0
info:
  title: Certificates Endpoint
  version: '1.0'
  description: |-
    # Certificates API

    This documentation contains the API description that is expected from a source of certificates that is supplying certificates to the Burgerprofiel platform of the Flemish Government.
servers:
  - url: https://burgerprofiel.vlaanderen.be/v1
    description: Burgerprofiel
paths:
  /certificates/{ssn}:
    get:
      tags:
        - Certificates
      summary: Certificates List
      parameters:
        - name: ssn
          in: path
          description: Social security number
          required: true
          style: simple
          explode: false
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/List-Certificates'
              examples:
                Full Example:
                  value:
                    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
                      - id: 85144567-7043-4469-9e79-279f4eb31e27
                        language: en
                        name: Dienstencheques 2019
                        year: 2019
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/en
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/en/download
                      - id: 8a4faf91-300e-46f0-8dad-0e1e572dbca1
                        language: nl
                        name: Sportkamp Tennis
                        community: 23088
                        year: 2018
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download
                      - id: 25da5b3c-4de4-457c-a803-cea5cafbfff5
                        language: nl
                        name: Dienstencheques 2018
                        year: 2018
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/25da5b3c-4de4-457c-a803-cea5cafbfff5
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/25da5b3c-4de4-457c-a803-cea5cafbfff5/download
                      - id: 8e3405ea-ef23-4d8a-b5b4-9cb645ac312b
                        language: nl
                        name: Deelname opleiding recreatiemedewerker
                        year: 2019
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8e3405ea-ef23-4d8a-b5b4-9cb645ac312b
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8e3405ea-ef23-4d8a-b5b4-9cb645ac312b/download
                      - id: 8df1a0b0-1278-46a7-a3dc-cce7f593d02c
                        language: nl
                        name: Sportkamp tennis
                        community: 11002
                        year: 2012
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8df1a0b0-1278-46a7-a3dc-cce7f593d02c
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8df1a0b0-1278-46a7-a3dc-cce7f593d02c/download
                      - id: 34492c86-7bf8-4d96-9e61-e3c2f51d172a
                        language: nl
                        name: Dienstencheques 2015
                        year: 2015
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/34492c86-7bf8-4d96-9e61-e3c2f51d172a
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/34492c86-7bf8-4d96-9e61-e3c2f51d172a/download
                      - id: a681c382-8e99-4757-9fdb-487b9b6aeb78
                        language: nl
                        name: Trainersopleiding voetbal
                        community: 71053
                        year: 2013
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/a681c382-8e99-4757-9fdb-487b9b6aeb78
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/a681c382-8e99-4757-9fdb-487b9b6aeb78/download
                      - id: 6973ab14-15c6-4ee7-944c-9d1162d9de71
                        language: nl
                        name: Dienstencheques 2014
                        year: 2014
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/6973ab14-15c6-4ee7-944c-9d1162d9de71
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/6973ab14-15c6-4ee7-944c-9d1162d9de71/download
                      - id: d61fdf2e-8099-4757-93d9-2709f1ce1ae2
                        language: nl
                        name: Vlaamse kinderbijslag
                        year: 2019
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/d61fdf2e-8099-4757-93d9-2709f1ce1ae2
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/d61fdf2e-8099-4757-93d9-2709f1ce1ae2/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
                Last page, no more next page:
                  value:
                    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
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/download
                      - id: 57faeea1-ff3b-4c65-989c-e2175610c2b0
                        language: nl
                        name: Sportkamp Volleybal
                        community: 21004
                        year: 2019
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0/download
                      - id: 8a4faf91-300e-46f0-8dad-0e1e572dbca1
                        language: nl
                        name: Sportkamp Tennis
                        community: 23088
                        year: 2018
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download
                    pageMetadata:
                      number: 3
                      size: 10
                      totalElements: 23
                      totalPages: 3
                    links:
                      - rel: self
                        href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=2
                      - 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=2
                First page is last page:
                  value:
                    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
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/85144567-7043-4469-9e79-279f4eb31e27/download
                      - id: 57faeea1-ff3b-4c65-989c-e2175610c2b0
                        language: nl
                        name: Sportkamp Volleybal
                        community: 21004
                        year: 2019
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/57faeea1-ff3b-4c65-989c-e2175610c2b0/download
                      - id: 8a4faf91-300e-46f0-8dad-0e1e572dbca1
                        language: nl
                        name: Sportkamp Tennis
                        community: 23088
                        year: 2018
                        links:
                          - rel: self
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1
                          - rel: download
                            href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302/8a4faf91-300e-46f0-8dad-0e1e572dbca1/download
                    pageMetadata:
                      number: 1
                      size: 10
                      totalElements: 3
                      totalPages: 1
                    links:
                      - rel: self
                        href: https://burgerprofiel.vlaanderen.be/v1/certificates/90061638302?limit=10&page=0
                      - 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=0
        '403':
          description: Access Denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: Access Denied
                    status: 403
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: Could not find the certificate you are looking for.
                    status: 404
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: <description of the internal server error>
                    status: 500
  /certificates/{ssn}/{certificateId}/{language}:
    get:
      tags:
        - Certificates
      summary: Certificate Details
      description: ''
      parameters:
        - name: ssn
          in: path
          description: Social security number
          required: true
          style: simple
          explode: false
          schema:
            type: string
        - name: certificateId
          in: path
          description: ID of the certificate, defined as path parameter here (can be query parameter too)
          required: true
          style: simple
          explode: false
          schema:
            type: string
        - name: language
          in: path
          description: Language of the certificate, defined as path parameter here (can be query parameter too)
          required: true
          style: simple
          explode: false
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/Item-Certificate'
              examples:
                only-required:
                  value:
                    id: 85144567-7043-4469-9e79-279f4eb31e27
                    language: nl
                    name: certificate-1234
                    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
                only-year:
                  value:
                    id: 85144567-7043-4469-9e79-279f4eb31e27
                    language: nl
                    name: certificate-1234
                    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
                only-community:
                  value:
                    id: 85144567-7043-4469-9e79-279f4eb31e27
                    language: nl
                    name: certificate-1234
                    community: 21004
                    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
                full-certificate:
                  value:
                    id: 85144567-7043-4469-9e79-279f4eb31e27
                    language: nl
                    name: certificate-1234
                    community: 21004
                    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
        '403':
          description: Access Denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: Access Denied
                    status: 403
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: Could not find the certificate you are looking for.
                    status: 404
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
              examples:
                Example:
                  value:
                    title: An error occurred!
                    detail: <description of the internal server error>
                    status: 500
components:
  schemas:
    ProblemDetails:
      title: Problem details
      required:
        - type
        - title
        - detail
        - status
      type: object
      properties:
        title:
          type: string
        detail:
          type: string
        status:
          format: int32
          type: integer
      example:
        title: Er heeft zich een fout voorgedaan!
        detail: ''
        status: 400
    Item-Certificate:
      title: Certificate
      required:
        - id
        - links
        - name
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        language:
          type: string
        year:
          type: integer
        community:
          type: integer
        links:
          $ref: '#/components/schemas/Common-Item-Links'
    Common-General-Link:
      title: Link
      required:
        - href
        - rel
      type: object
      properties:
        rel:
          type: string
        href:
          type: string
    Common-Item-Links:
      title: Links For Item
      type: array
      items:
        $ref: '#/components/schemas/Common-General-Link'
    Common-List-Links:
      title: Links For List
      type: array
      items:
        $ref: '#/components/schemas/Common-General-Link'
    Common-List-PageMetadata:
      title: PageMetadata
      required:
        - number
        - size
        - totalElements
        - totalPages
      type: object
      properties:
        size:
          type: integer
        totalElements:
          type: integer
        totalPages:
          type: number
        number:
          type: number
    List-Certificates:
      required:
        - certificates
        - links
        - pageMetaData
      type: object
      properties:
        certificates:
          type: array
          items:
            $ref: '#/components/schemas/Item-Certificate'
        links:
          $ref: '#/components/schemas/Common-List-Links'
        pageMetaData:
          $ref: '#/components/schemas/Common-List-PageMetadata'

View file
nameopenapi.json

...