components:
  parameters:
    behandeldienstconfiguratie-id:
      description: de identifier van de behandeldienst configuratie
      in: path
      name: behandeldienstconfiguratie-id
      required: true
      schema:
        type: integer
  responses:
    "400":
      content:
        application/json:
          schema:
            allOf:
            - properties:
                detail:
                  description: Meer detail informatie over de opgetreden fout
                  type: string
                instance:
                  description: Het unieke instance id van het request dat resulteerde
                    in de foutmelding.
                  type: string
                status:
                  description: De statuscode van de fout (= 400) overeenkomend met
                    de http-status code van de response.
                  format: int64
                  type: integer
                title:
                  description: Informatie over de opgetreden fout.
                  type: string
                type:
                  description: Het type fout dat opgetreden is. Bijvoorbeeld VALIDATIE_FOUT
                    of ONVERWACHTE_FOUT.
                  type: string
              required:
              - type
              - title
              - status
            - properties:
                invalid-params:
                  items:
                    properties:
                      name:
                        description: '''Naam van de parameter die een fout bevat,
                          bijvoorbeeld: activiteitFunctioneleStructuurRef'''
                        type: string
                      reason:
                        description: Bijvoorbeeld 'de activiteitFunctioneleStructuurRef
                          mag geen speciale karakters bevatten.'
                        type: string
                      type:
                        description: Een type van de fout, bijvoorbeeld 'Validatie
                          melding'
                        type: string
                    required:
                    - type
                    - name
                    - reason
                  type: array
      description: Fouten (missing parameter; niet bestaande parameter; invalide waarde
        voor parameter)
    "404":
      content:
        application/json:
          schema:
            allOf:
            - properties:
                detail:
                  description: Meer detail informatie over de opgetreden fout
                  type: string
                instance:
                  description: Het unieke instance id van het request dat resulteerde
                    in de foutmelding.
                  type: string
                status:
                  description: De statuscode van de fout (= 404) overeenkomend met
                    de http-status code van de response.
                  format: int64
                  type: integer
                title:
                  description: Informatie over de opgetreden fout.
                  type: string
                type:
                  description: Het type resource dat niet gevonden is.
                  type: string
              required:
              - type
              - title
              - status
            - properties:
                detail:
                  description: De identifier van het object dat niet gevonden is.
                    Bijvoorbeeld de URN van een activiteit.
                  type: string
                type:
                  description: Bevat informatie over het type object dat niet gevonden
                    is. Bijvoorbeeld ACTIVITY_NOT_FOUND of SUBACTIVITY_NOT_FOUND
                  type: string
      description: De gevraagde resource is niet gevonden
    "500":
      content:
        application/json:
          schema:
            properties:
              detail:
                description: Meer detail informatie over de opgetreden fout
                type: string
              instance:
                description: Het unieke instance id van het request dat resulteerde
                  in de foutmelding.
                type: string
              status:
                description: De statuscode (= 500) van de fout overeenkomend met de
                  http-status code van de response.
                format: int64
                type: integer
              title:
                description: Informatie over de opgetreden fout.
                type: string
              type:
                description: Het type fout dat opgetreden is. Bijvoorbeeld VALIDATIE_FOUT
                  of ONVERWACHTE_FOUT.
                type: string
            required:
            - type
            - title
            - status
      description: Er is een onverwachte technische fout opgetreden
  schemas:
    BehandeldienstConfiguratieHALResponse:
      properties:
        _links:
          properties:
            self:
              description: HAL link
              properties:
                href:
                  description: URI
                  type: string
              required:
              - href
          required:
          - self
        activiteit:
          $ref: '#/components/schemas/BehandeldienstConfiguratieRequest/properties/activiteit'
        behandeldienstOin:
          description: De oin van de behandeldienst
          type: string
        locatieOins:
          description: De locaties waar deze configuratie van toepassing is. De locaties
            zijn de rijks-, gemeente-, provincie- of waterschapgrenzen geidentificeerd
            met de oin.
          items:
            type: string
          type: array
        oin:
          description: De oin van het bevoegd gezag
          type: string
        toestemming:
          properties:
            code:
              $ref: '#/components/schemas/BehandeldienstConfiguratieRequest/properties/toestemming/properties/code'
            waarde:
              description: Waarde van het toestemmingstype.
              type: string
          required:
          - code
          - waarde
      required:
      - oin
      - activiteit
      - behandeldienstOin
      - _links
    BehandeldienstConfiguratieHALResponseList:
      properties:
        _embedded:
          properties:
            behandeldienstConfiguratieEntryList:
              items:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponse'
              type: array
    BehandeldienstConfiguratieRequest:
      properties:
        activiteit:
          properties:
            naam:
              description: Naam (urn) van de activiteit
              type: string
            oin:
              deprecated: true
              description: Wordt niet meer gebruikt. Bevat altijd de waarde 00000000000000000000.
              type: string
          required:
          - naam
        behandeldienstOin:
          description: De oin van de behandeldienst
          type: string
        locatieOins:
          description: De locaties waar deze configuratie van toepassing is. De locaties
            zijn de rijks-, gemeente-, provincie- of waterschapgrenzen geidentificeerd
            met de oin.
          items:
            type: string
          maxItems: 500
          type: array
        oin:
          description: De oin van de organisatie
          type: string
        toestemming:
          description: Toestemmingtype van het regelbeheerobject.
          properties:
            code:
              description: Code van de toestemming
              enum:
              - Vergunning
              - Melding
              - Informatie
              - InformatieOngewoonVoorval
              - AanvraagMaatwerkvoorschrift
              - MeldingGelijkwaardigeMaatregel
              - AanvraagToestemmingGelijkwaardigeMaatregel
              type: string
            waarde:
              deprecated: true
              description: Dit veld wordt genegeerd en zal in de volgende versie niet
                meer aanwezig zijn.
              type: string
          required:
          - code
      required:
      - oin
      - activiteit
      - behandeldienstOin
info:
  contact:
    name: Ontwikkelaarsportaal Omgevingswet
    url: https://developer.omgevingswet.overheid.nl/services/contact/
  description: Een REST-API voor het beheren van de behandeldienst configuraties.
    Hierin kan een organisatie/activiteit combinatie gekoppeld worden aan een behandeldienst.
  title: Behandeldienst Configuratie
  version: 1.0.6
openapi: 3.0.0
paths:
  /:
    get:
      responses:
        "200":
          content:
            application/json:
              schema:
                example: '{"openapi": "3.0.0", ... }'
          description: OpenApi Specification Json
      summary: OpenApi Specification
      tags:
      - Meta
  /behandeldienstconfiguraties:
    get:
      description: 'Retourneert alle behandeldienst configuraties die voldoen aan
        alle optionele filter parameters. Het is niet toegestaan om deze service aan
        te roepen zonder filter parameters: er moet minimaal één filter parameter
        gebruikt wordt.'
      parameters:
      - description: De oin van de organisatie waarop gefilterd moet worden
        in: query
        name: oin
        schema:
          type: string
      - description: De naam (imow-identifier) van de activiteit waarop gefilterd
          moet worden.
        in: query
        name: activiteitNaam
        schema:
          type: string
      - deprecated: true
        description: Wordt niet meer gebruikt
        in: query
        name: activiteitOin
        schema:
          type: string
      - description: De functionele structuur referentie van het regelbeheerobject
          waarop gefilterd moet worden
        in: query
        name: activiteitFunctioneleStructuurRef
        schema:
          type: string
      - description: De oin van de behandeldienst waarop gefilterd moet worden
        in: query
        name: behandeldienstOin
        schema:
          type: string
      responses:
        "200":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponseList'
          description: De lijst van behandeldienst configuraties
        "400":
          $ref: '#/components/responses/400'
        "404":
          $ref: '#/components/responses/404'
        "500":
          $ref: '#/components/responses/500'
      summary: Ophalen van behandeldienst configuraties
      tags:
      - Ophalen behandeldienst configuratie
    post:
      description: Voeg een nieuwe behandeldienst configuratie toe
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BehandeldienstConfiguratieRequest'
        description: Inhoud van de te creeeren behandeldienst configuratie
        required: true
      responses:
        "200":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponse'
          description: De gecreeerde behandeldienst configuratie als HAL Resource
        "400":
          $ref: '#/components/responses/400'
        "404":
          $ref: '#/components/responses/404'
        "500":
          $ref: '#/components/responses/500'
      summary: Toevoegen behandeldienst configuratie
      tags:
      - Beheren behandeldienst configuratie
  /behandeldienstconfiguraties/{behandeldienstconfiguratie-id}:
    delete:
      description: Verwijdert een bestaande behandeldienst configuratie behorende
        bij de meegegeven identifier
      parameters:
      - $ref: '#/components/parameters/behandeldienstconfiguratie-id'
      responses:
        "200":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponse'
          description: De behandeldienst configuratie behorende bij de meegegeven
            identifier voordat deze verwijderd was
        "400":
          $ref: '#/components/responses/400'
        "404":
          $ref: '#/components/responses/404'
        "500":
          $ref: '#/components/responses/500'
      summary: Verwijderen behandeldienst configuratie
      tags:
      - Beheren behandeldienst configuratie
    get:
      description: Retourneert de behandeldienst configuratie behorende bij de meegegeven
        identifier
      parameters:
      - $ref: '#/components/parameters/behandeldienstconfiguratie-id'
      responses:
        "200":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponse'
          description: De behandeldienst configuratie behorende bij de meegegeven
            identifier
        "400":
          $ref: '#/components/responses/400'
        "404":
          $ref: '#/components/responses/404'
        "500":
          $ref: '#/components/responses/500'
      summary: Ophalen specifieke behandeldienst configuratie
      tags:
      - Ophalen behandeldienst configuratie
    put:
      description: Update een bestaande behandeldienst configuratie behorende bij
        de meegegeven identifier
      parameters:
      - $ref: '#/components/parameters/behandeldienstconfiguratie-id'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BehandeldienstConfiguratieRequest'
        description: Geupdate inhoud van de behandeldienst configuratie
        required: true
      responses:
        "200":
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/BehandeldienstConfiguratieHALResponse'
          description: De behandeldienst configuratie behorende bij de meegegeven
            identifier nadat de update is uitgevoerd
        "400":
          $ref: '#/components/responses/400'
        "404":
          $ref: '#/components/responses/404'
        "500":
          $ref: '#/components/responses/500'
      summary: Updaten behandeldienst configuratie
      tags:
      - Beheren behandeldienst configuratie
  /health:
    get:
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  groups:
                    items:
                      type: string
                    type: array
                  status:
                    enum:
                    - UP
                    type: string
                required:
                - status
                type: object
          description: Health
        "503":
          content:
            application/json:
              schema:
                properties:
                  groups:
                    items:
                      type: string
                    type: array
                  status:
                    enum:
                    - DOWN
                    - OUT_OF_SERVICE
                    type: string
                required:
                - status
                type: object
          description: Health
      summary: health info
      tags:
      - Meta
  /info:
    get:
      responses:
        "200":
          content:
            application/json:
              schema:
                description: Info
                properties:
                  app:
                    properties:
                      buildtime:
                        type: string
                      name:
                        type: string
                      version:
                        type: string
                      version2:
                        type: string
                    type: object
                required:
                - app
          description: Info
      summary: applicatie info
      tags:
      - Meta
x-wso2-cors:
  accessControlAllowCredentials: false
  accessControlAllowHeaders:
  - authorization
  - Access-Control-Allow-Origin
  - Content-Type
  - SOAPAction
  accessControlAllowMethods:
  - GET
  - PUT
  - POST
  - DELETE
  - PATCH
  - OPTIONS
  accessControlAllowOrigins:
  - '*'
  corsConfigurationEnabled: true
