components:
  headers:
    API-Version:
      description: Semver of this API
      example: 1.0.0
      schema:
        example: 1.0.0
        externalDocs:
          description: ' /core/version-header: Return the full version number in a
            response header'
          url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
        pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
        type: string
    Link:
      description: Links to the previous, next, last or first pages
      example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev', <https://developer.overheid.nl/api/v1/apis?page=3>;
        rel='next'
      schema:
        example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev', <https://developer.overheid.nl/api/v1/apis?page=3>;
          rel='next'
        externalDocs:
          description: W3C reference
          url: https://www.w3.org/wiki/LinkHeader
        type: string
  parameters:
    id:
      description: id
      in: path
      name: id
      required: true
      schema:
        type: string
  responses:
    "204":
      description: Removed
      headers:
        API-Version:
          description: Semver of this API
          example: 1.0.0
          schema:
            example: 1.0.0
            externalDocs:
              description: ' /core/version-header: Return the full version number
                in a response header'
              url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
            pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
            type: string
    "400":
      content:
        application/problem+json:
          schema:
            properties:
              invalidParams:
                properties:
                  name:
                    example: url
                    type: string
                  reason:
                    example: Invalid URI format
                    type: string
                type: object
              title:
                example: Request validation failed
                type: string
            type: object
      description: Bad request
      headers:
        API-Version:
          description: Semver of this API
          example: 1.0.0
          schema:
            example: 1.0.0
            externalDocs:
              description: ' /core/version-header: Return the full version number
                in a response header'
              url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
            pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
            type: string
        Link:
          description: Links to the previous, next, last or first pages
          example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
            <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
          schema:
            example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
              <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
            externalDocs:
              description: W3C reference
              url: https://www.w3.org/wiki/LinkHeader
            type: string
    "404":
      description: Resource does not exist
      headers:
        API-Version:
          description: Semver of this API
          example: 1.0.0
          schema:
            example: 1.0.0
            externalDocs:
              description: ' /core/version-header: Return the full version number
                in a response header'
              url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
            pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
            type: string
  schemas:
    Adres:
      properties:
        huisnummer:
          example: 12
          type: number
        plaats:
          example: Nijmegen
          type: string
        postcode:
          example: 6521 BC
          type: string
        straat:
          example: Waldeck Pyrmontsingel
          type: string
    Bier:
      properties:
        alcoholPercentage:
          example: 7.6
          format: double
          type: number
        brouwerij:
          properties:
            adres:
              properties:
                huisnummer:
                  example: 12
                  type: number
                plaats:
                  example: Nijmegen
                  type: string
                postcode:
                  example: 6521 BC
                  type: string
                straat:
                  example: Waldeck Pyrmontsingel
                  type: string
            id:
              example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
              format: uuid
              type: string
            naam:
              example: Brouwtoren
              type: string
            type:
              enum:
              - nano
              - micro
              - macro
              type: string
          required:
          - type
          - naam
        id:
          example: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
          format: uuid
          type: string
        naam:
          example: Weizen Tripel
          type: string
        stijl:
          properties:
            id:
              example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
              format: uuid
              type: string
            naam:
              example: Tripel
              type: string
    Brouwerij:
      properties:
        adres:
          properties:
            huisnummer:
              example: 12
              type: number
            plaats:
              example: Nijmegen
              type: string
            postcode:
              example: 6521 BC
              type: string
            straat:
              example: Waldeck Pyrmontsingel
              type: string
        id:
          example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
          format: uuid
          type: string
        naam:
          example: Brouwtoren
          type: string
        type:
          enum:
          - nano
          - micro
          - macro
          type: string
      required:
      - type
      - naam
    Stijl:
      properties:
        id:
          example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          format: uuid
          type: string
        naam:
          example: Tripel
          type: string
info:
  contact:
    email: developer.overheid@geonovum.nl
    name: Team Developer Overheid
    url: https://github.com/orgs/developer-overheid-nl/discussions
  description: API om te demonstreren hoe je eenvoudig, design-first, een API kunt
    ontwikkelen met de tools van developer.overheid.nl.
  title: Bier API
  version: 1.0.0
openapi: 3.1.0
paths:
  /bieren:
    get:
      description: 'Endpoint om alle bieren op te halen. @TODO: Voeg hier eventueel
        extra informatie toe over het filteren, pagineren, etc.'
      operationId: listBieren
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  properties:
                    alcoholPercentage:
                      example: 7.6
                      format: double
                      type: number
                    brouwerij:
                      properties:
                        adres:
                          properties:
                            huisnummer:
                              example: 12
                              type: number
                            plaats:
                              example: Nijmegen
                              type: string
                            postcode:
                              example: 6521 BC
                              type: string
                            straat:
                              example: Waldeck Pyrmontsingel
                              type: string
                        id:
                          example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                          format: uuid
                          type: string
                        naam:
                          example: Brouwtoren
                          type: string
                        type:
                          enum:
                          - nano
                          - micro
                          - macro
                          type: string
                      required:
                      - type
                      - naam
                    id:
                      example: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
                      format: uuid
                      type: string
                    naam:
                      example: Weizen Tripel
                      type: string
                    stijl:
                      properties:
                        id:
                          example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                          format: uuid
                          type: string
                        naam:
                          example: Tripel
                          type: string
                type: array
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Alle bieren ophalen
      tags:
      - Bieren
    post:
      description: Nieuwe bier aanmaken
      operationId: createBieren
      responses:
        "201":
          content:
            application/json:
              schema:
                properties:
                  alcoholPercentage:
                    example: 7.6
                    format: double
                    type: number
                  brouwerij:
                    properties:
                      adres:
                        properties:
                          huisnummer:
                            example: 12
                            type: number
                          plaats:
                            example: Nijmegen
                            type: string
                          postcode:
                            example: 6521 BC
                            type: string
                          straat:
                            example: Waldeck Pyrmontsingel
                            type: string
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                        format: uuid
                        type: string
                      naam:
                        example: Brouwtoren
                        type: string
                      type:
                        enum:
                        - nano
                        - micro
                        - macro
                        type: string
                    required:
                    - type
                    - naam
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
                    format: uuid
                    type: string
                  naam:
                    example: Weizen Tripel
                    type: string
                  stijl:
                    properties:
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                        format: uuid
                        type: string
                      naam:
                        example: Tripel
                        type: string
          description: Created
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "400":
          content:
            application/problem+json:
              schema:
                properties:
                  invalidParams:
                    properties:
                      name:
                        example: url
                        type: string
                      reason:
                        example: Invalid URI format
                        type: string
                    type: object
                  title:
                    example: Request validation failed
                    type: string
                type: object
          description: Bad request
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Nieuwe bier aanmaken
      tags:
      - Bieren
  /bieren/{id}:
    delete:
      description: Bier verwijderen
      operationId: removeBier
      responses:
        "204":
          description: Removed
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "404":
          description: Resource does not exist
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
      summary: Bier verwijderen
      tags:
      - Bieren
    get:
      description: Bier ophalen
      operationId: retrieveBier
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  alcoholPercentage:
                    example: 7.6
                    format: double
                    type: number
                  brouwerij:
                    properties:
                      adres:
                        properties:
                          huisnummer:
                            example: 12
                            type: number
                          plaats:
                            example: Nijmegen
                            type: string
                          postcode:
                            example: 6521 BC
                            type: string
                          straat:
                            example: Waldeck Pyrmontsingel
                            type: string
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                        format: uuid
                        type: string
                      naam:
                        example: Brouwtoren
                        type: string
                      type:
                        enum:
                        - nano
                        - micro
                        - macro
                        type: string
                    required:
                    - type
                    - naam
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
                    format: uuid
                    type: string
                  naam:
                    example: Weizen Tripel
                    type: string
                  stijl:
                    properties:
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                        format: uuid
                        type: string
                      naam:
                        example: Tripel
                        type: string
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "404":
          description: Resource does not exist
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
      summary: Bier ophalen
      tags:
      - Bieren
    parameters:
    - description: id
      in: path
      name: id
      required: true
      schema:
        type: string
    put:
      description: Bier wijzigen
      operationId: editBier
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  alcoholPercentage:
                    example: 7.6
                    format: double
                    type: number
                  brouwerij:
                    properties:
                      adres:
                        properties:
                          huisnummer:
                            example: 12
                            type: number
                          plaats:
                            example: Nijmegen
                            type: string
                          postcode:
                            example: 6521 BC
                            type: string
                          straat:
                            example: Waldeck Pyrmontsingel
                            type: string
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                        format: uuid
                        type: string
                      naam:
                        example: Brouwtoren
                        type: string
                      type:
                        enum:
                        - nano
                        - micro
                        - macro
                        type: string
                    required:
                    - type
                    - naam
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee92
                    format: uuid
                    type: string
                  naam:
                    example: Weizen Tripel
                    type: string
                  stijl:
                    properties:
                      id:
                        example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                        format: uuid
                        type: string
                      naam:
                        example: Tripel
                        type: string
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "400":
          content:
            application/problem+json:
              schema:
                properties:
                  invalidParams:
                    properties:
                      name:
                        example: url
                        type: string
                      reason:
                        example: Invalid URI format
                        type: string
                    type: object
                  title:
                    example: Request validation failed
                    type: string
                type: object
          description: Bad request
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Bier wijzigen
      tags:
      - Bieren
  /brouwerijen:
    get:
      description: 'Endpoint om alle brouwerijen op te halen. @TODO: Voeg hier eventueel
        extra informatie toe over het filteren, pagineren, etc.'
      operationId: listBrouwerijen
      parameters:
      - in: query
        name: type
        required: false
        schema:
          enum:
          - nano
          - micro
          - macro
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  properties:
                    adres:
                      properties:
                        huisnummer:
                          example: 12
                          type: number
                        plaats:
                          example: Nijmegen
                          type: string
                        postcode:
                          example: 6521 BC
                          type: string
                        straat:
                          example: Waldeck Pyrmontsingel
                          type: string
                    id:
                      example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                      format: uuid
                      type: string
                    naam:
                      example: Brouwtoren
                      type: string
                    type:
                      enum:
                      - nano
                      - micro
                      - macro
                      type: string
                  required:
                  - type
                  - naam
                type: array
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Alle brouwerijen ophalen
      tags:
      - Brouwerijen
    post:
      description: Nieuwe brouwerij aanmaken
      operationId: createBrouwerijen
      responses:
        "201":
          content:
            application/json:
              schema:
                properties:
                  adres:
                    properties:
                      huisnummer:
                        example: 12
                        type: number
                      plaats:
                        example: Nijmegen
                        type: string
                      postcode:
                        example: 6521 BC
                        type: string
                      straat:
                        example: Waldeck Pyrmontsingel
                        type: string
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                    format: uuid
                    type: string
                  naam:
                    example: Brouwtoren
                    type: string
                  type:
                    enum:
                    - nano
                    - micro
                    - macro
                    type: string
                required:
                - type
                - naam
          description: Created
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "400":
          content:
            application/problem+json:
              schema:
                properties:
                  invalidParams:
                    properties:
                      name:
                        example: url
                        type: string
                      reason:
                        example: Invalid URI format
                        type: string
                    type: object
                  title:
                    example: Request validation failed
                    type: string
                type: object
          description: Bad request
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Nieuwe brouwerij aanmaken
      tags:
      - Brouwerijen
  /brouwerijen/{id}:
    delete:
      description: Brouwerij verwijderen
      operationId: removeBrouwerij
      responses:
        "204":
          description: Removed
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "404":
          description: Resource does not exist
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
      summary: Brouwerij verwijderen
      tags:
      - Brouwerijen
    get:
      description: Brouwerij ophalen
      operationId: retrieveBrouwerij
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  adres:
                    properties:
                      huisnummer:
                        example: 12
                        type: number
                      plaats:
                        example: Nijmegen
                        type: string
                      postcode:
                        example: 6521 BC
                        type: string
                      straat:
                        example: Waldeck Pyrmontsingel
                        type: string
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                    format: uuid
                    type: string
                  naam:
                    example: Brouwtoren
                    type: string
                  type:
                    enum:
                    - nano
                    - micro
                    - macro
                    type: string
                required:
                - type
                - naam
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "404":
          description: Resource does not exist
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
      summary: Brouwerij ophalen
      tags:
      - Brouwerijen
    parameters:
    - description: id
      in: path
      name: id
      required: true
      schema:
        type: string
    put:
      description: Brouwerij wijzigen
      operationId: editBrouwerij
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  adres:
                    properties:
                      huisnummer:
                        example: 12
                        type: number
                      plaats:
                        example: Nijmegen
                        type: string
                      postcode:
                        example: 6521 BC
                        type: string
                      straat:
                        example: Waldeck Pyrmontsingel
                        type: string
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee93
                    format: uuid
                    type: string
                  naam:
                    example: Brouwtoren
                    type: string
                  type:
                    enum:
                    - nano
                    - micro
                    - macro
                    type: string
                required:
                - type
                - naam
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "400":
          content:
            application/problem+json:
              schema:
                properties:
                  invalidParams:
                    properties:
                      name:
                        example: url
                        type: string
                      reason:
                        example: Invalid URI format
                        type: string
                    type: object
                  title:
                    example: Request validation failed
                    type: string
                type: object
          description: Bad request
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Brouwerij wijzigen
      tags:
      - Brouwerijen
  /stijlen:
    get:
      description: 'Endpoint om alle stijlen op te halen. @TODO: Voeg hier eventueel
        extra informatie toe over het filteren, pagineren, etc.'
      operationId: listStijlen
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  properties:
                    id:
                      example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                      format: uuid
                      type: string
                    naam:
                      example: Tripel
                      type: string
                type: array
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
            Link:
              description: Links to the previous, next, last or first pages
              example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
              schema:
                example: <https://developer.overheid.nl/api/v1/apis?page=2>; rel='prev',
                  <https://developer.overheid.nl/api/v1/apis?page=3>; rel='next'
                externalDocs:
                  description: W3C reference
                  url: https://www.w3.org/wiki/LinkHeader
                type: string
      summary: Alle stijlen ophalen
      tags:
      - Stijlen
  /stijlen/{id}:
    get:
      description: Stijl ophalen
      operationId: retrieveStijl
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  id:
                    example: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
                    format: uuid
                    type: string
                  naam:
                    example: Tripel
                    type: string
          description: OK
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
        "404":
          description: Resource does not exist
          headers:
            API-Version:
              description: Semver of this API
              example: 1.0.0
              schema:
                example: 1.0.0
                externalDocs:
                  description: ' /core/version-header: Return the full version number
                    in a response header'
                  url: https://logius-standaarden.github.io/API-Design-Rules/#/core/version-header
                pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
                type: string
      summary: Stijl ophalen
      tags:
      - Stijlen
    parameters:
    - description: id
      in: path
      name: id
      required: true
      schema:
        type: string
servers:
- url: http://localhost:8080/v1
tags:
- description: Alle API operaties die bij brouwerijen horen.
  name: Brouwerijen
- description: Alle API operaties die bij bieren horen.
  name: Bieren
- description: Alle API operaties die bij stijlen horen.
  name: Stijlen
