openapi: 3.1.0
components:
  schemas:
    BroRefCode:
      type: object
      required:
        - codeSpace
        - value
      properties:
        codeSpace:
          type: string
        value:
          type: string
        attributes:
          type: object
          additionalProperties:
            type: string
    GmnRelations:
      type: object
      properties:
        gmnBroId:
          type: string
        gmwBroIds:
          type: array
          items:
            type: string
        characteristics:
          type: object
          properties:
            broId:
              type: string
            qualityRegime:
              type: string
            deliveryAccountableParty:
              type: string
            objectRegistrationTime:
              type: string
            latestCorrectionTime:
              type: string
            underReview:
              type: string
            underReviewTime:
              type: string
            deregistered:
              type: string
    GmwRelations:
      type: object
      properties:
        gmwBroId:
          type: string
        monitoringTubeReferences:
          type: array
          items:
            type: object
            properties:
              tubeNumber:
                type: integer
                format: int32
              screenTopPosition:
                type: number
              gmnReferences:
                type: array
                items:
                  type: object
                  properties:
                    broId:
                      type: string
                    url:
                      type: string
                    accountableParty:
                      type: string
                    tubeReferenceEndDate:
                      type: string
                    characteristics:
                      type: object
                      properties:
                        broId:
                          type: string
                        qualityRegime:
                          type: string
                        deliveryAccountableParty:
                          type: string
                        objectRegistrationTime:
                          type: string
                        latestCorrectionTime:
                          type: string
                        underReview:
                          type: string
                        underReviewTime:
                          type: string
                        deregistered:
                          type: string
              gldReferences:
                type: array
                items:
                  type: object
                  properties:
                    broId:
                      type: string
                    url:
                      type: string
                    accountableParty:
                      type: string
                    tubeReferenceEndDate:
                      type: string
                    characteristics:
                      type: object
                      properties:
                        broId:
                          type: string
                        qualityRegime:
                          type: string
                        deliveryAccountableParty:
                          type: string
                        objectRegistrationTime:
                          type: string
                        latestCorrectionTime:
                          type: string
                        underReview:
                          type: string
                        underReviewTime:
                          type: string
                        deregistered:
                          type: string
              garReferences:
                type: array
                items:
                  type: object
                  properties:
                    broId:
                      type: string
                    url:
                      type: string
                    accountableParty:
                      type: string
                    tubeReferenceEndDate:
                      type: string
                    characteristics:
                      type: object
                      properties:
                        broId:
                          type: string
                        qualityRegime:
                          type: string
                        deliveryAccountableParty:
                          type: string
                        objectRegistrationTime:
                          type: string
                        latestCorrectionTime:
                          type: string
                        underReview:
                          type: string
                        underReviewTime:
                          type: string
                        deregistered:
                          type: string
        characteristics:
          type: object
          properties:
            broId:
              type: string
            qualityRegime:
              type: string
            deliveryAccountableParty:
              type: string
            objectRegistrationTime:
              type: string
            latestCorrectionTime:
              type: string
            underReview:
              type: string
            underReviewTime:
              type: string
            deregistered:
              type: string
            numberOfMonitoringTubes:
              type: integer
              format: int32
            nitgCode:
              type: string
            wellCode:
              type: string
            owner:
              type: string
            wellConstructionDate:
              type: string
            wellRemovalDate:
              type: string
            constructionStandard:
              type: object
              required:
                - codeSpace
                - value
              properties:
                codeSpace:
                  type: string
                value:
                  type: string
                attributes:
                  type: object
                  additionalProperties:
                    type: string
            initialFunction:
              type: object
              required:
                - codeSpace
                - value
              properties:
                codeSpace:
                  type: string
                value:
                  type: string
                attributes:
                  type: object
                  additionalProperties:
                    type: string
            wellHeadProtector:
              type: object
              required:
                - codeSpace
                - value
              properties:
                codeSpace:
                  type: string
                value:
                  type: string
                attributes:
                  type: object
                  additionalProperties:
                    type: string
            offset:
              type: number
            localVerticalReferencePoint:
              type: object
              required:
                - codeSpace
                - value
              properties:
                codeSpace:
                  type: string
                value:
                  type: string
                attributes:
                  type: object
                  additionalProperties:
                    type: string
            verticalDatum:
              type: object
              required:
                - codeSpace
                - value
              properties:
                codeSpace:
                  type: string
                value:
                  type: string
                attributes:
                  type: object
                  additionalProperties:
                    type: string
            groundLevelPosition:
              type: number
    GmwRelationsDto:
      type: object
      properties:
        broId:
          type: string
        qualityRegime:
          type: string
        deliveryAccountableParty:
          type: string
        objectRegistrationTime:
          type: string
        latestCorrectionTime:
          type: string
        underReview:
          type: string
        underReviewTime:
          type: string
        deregistered:
          type: string
        numberOfMonitoringTubes:
          type: integer
          format: int32
        nitgCode:
          type: string
        wellCode:
          type: string
        owner:
          type: string
        wellConstructionDate:
          type: string
        wellRemovalDate:
          type: string
        constructionStandard:
          type: object
          required:
            - codeSpace
            - value
          properties:
            codeSpace:
              type: string
            value:
              type: string
            attributes:
              type: object
              additionalProperties:
                type: string
        initialFunction:
          type: object
          required:
            - codeSpace
            - value
          properties:
            codeSpace:
              type: string
            value:
              type: string
            attributes:
              type: object
              additionalProperties:
                type: string
        wellHeadProtector:
          type: object
          required:
            - codeSpace
            - value
          properties:
            codeSpace:
              type: string
            value:
              type: string
            attributes:
              type: object
              additionalProperties:
                type: string
        offset:
          type: number
        localVerticalReferencePoint:
          type: object
          required:
            - codeSpace
            - value
          properties:
            codeSpace:
              type: string
            value:
              type: string
            attributes:
              type: object
              additionalProperties:
                type: string
        verticalDatum:
          type: object
          required:
            - codeSpace
            - value
          properties:
            codeSpace:
              type: string
            value:
              type: string
            attributes:
              type: object
              additionalProperties:
                type: string
        groundLevelPosition:
          type: number
    MonitoringTubeReferences:
      type: object
      properties:
        tubeNumber:
          type: integer
          format: int32
        screenTopPosition:
          type: number
        gmnReferences:
          type: array
          items:
            type: object
            properties:
              broId:
                type: string
              url:
                type: string
              accountableParty:
                type: string
              tubeReferenceEndDate:
                type: string
              characteristics:
                type: object
                properties:
                  broId:
                    type: string
                  qualityRegime:
                    type: string
                  deliveryAccountableParty:
                    type: string
                  objectRegistrationTime:
                    type: string
                  latestCorrectionTime:
                    type: string
                  underReview:
                    type: string
                  underReviewTime:
                    type: string
                  deregistered:
                    type: string
        gldReferences:
          type: array
          items:
            type: object
            properties:
              broId:
                type: string
              url:
                type: string
              accountableParty:
                type: string
              tubeReferenceEndDate:
                type: string
              characteristics:
                type: object
                properties:
                  broId:
                    type: string
                  qualityRegime:
                    type: string
                  deliveryAccountableParty:
                    type: string
                  objectRegistrationTime:
                    type: string
                  latestCorrectionTime:
                    type: string
                  underReview:
                    type: string
                  underReviewTime:
                    type: string
                  deregistered:
                    type: string
        garReferences:
          type: array
          items:
            type: object
            properties:
              broId:
                type: string
              url:
                type: string
              accountableParty:
                type: string
              tubeReferenceEndDate:
                type: string
              characteristics:
                type: object
                properties:
                  broId:
                    type: string
                  qualityRegime:
                    type: string
                  deliveryAccountableParty:
                    type: string
                  objectRegistrationTime:
                    type: string
                  latestCorrectionTime:
                    type: string
                  underReview:
                    type: string
                  underReviewTime:
                    type: string
                  deregistered:
                    type: string
    RegistrationObjectReference:
      type: object
      properties:
        broId:
          type: string
        url:
          type: string
        accountableParty:
          type: string
        tubeReferenceEndDate:
          type: string
        characteristics:
          type: object
          properties:
            broId:
              type: string
            qualityRegime:
              type: string
            deliveryAccountableParty:
              type: string
            objectRegistrationTime:
              type: string
            latestCorrectionTime:
              type: string
            underReview:
              type: string
            underReviewTime:
              type: string
            deregistered:
              type: string
    RelationsDto:
      type: object
      properties:
        broId:
          type: string
        qualityRegime:
          type: string
        deliveryAccountableParty:
          type: string
        objectRegistrationTime:
          type: string
        latestCorrectionTime:
          type: string
        underReview:
          type: string
        underReviewTime:
          type: string
        deregistered:
          type: string
    ServiceError:
      type: object
      properties:
        title:
          type: string
        description:
          type: string
        errorCode:
          type: integer
          format: int32
paths:
  /gm/v1/gmn-relations/{broId}:
    get:
      summary: Haalt aan dit grondwatermonitoringnet gerelateerde registratie objecten op
      description: |2
            Haalt een overzicht op van aan dit grondwatermonitoringnet gerelateerde objecten:
            grondwatermonitoringputten (GMW). 
      operationId: gmn-relations
      parameters:
        - description: Het BRO-ID van de het grondwatermonitoringnetwork (GMN).
          example: GMN000000038500
          name: broId
          in: path
          required: true
          schema:
            type: string
        - description: |-
            Deze parameter bepaalt of er wel of niet kensetgegevens in de response staan. 
            Er zijn twee mogelijke waarden: true, false.
            Datums worden volgens ISO 8601 geformatteerd. 
            Bij afwezigheid van deze parameter worden er geen kensetgegevens teruggegeven.
          example: true
          name: inclMetadata
          in: query
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: De gevraagde relaties.
          headers:
            API-Version:
              description: Versie van deze GM API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  gmnBroId:
                    type: string
                  gmwBroIds:
                    type: array
                    items:
                      type: string
                  characteristics:
                    type: object
                    properties:
                      broId:
                        type: string
                      qualityRegime:
                        type: string
                      deliveryAccountableParty:
                        type: string
                      objectRegistrationTime:
                        type: string
                      latestCorrectionTime:
                        type: string
                      underReview:
                        type: string
                      underReviewTime:
                        type: string
                      deregistered:
                        type: string
        '400':
          description: Er bevinden zich fouten in het verzoek.
          headers:
            API-Version:
              description: Versie van deze GM API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  errorCode:
                    type: integer
                    format: int32
  /gm/v1/gmw-relations/{broId}:
    get:
      summary: Haalt aan deze put gerelateerde registratie objecten op
      description: |-
        Haalt een overzicht op van aan deze put gerelateerde objecten: grondwaterstandendossier (GLD), grondwatersamenstellingsonderzoek (GAR), formatieweerstandsonderzoek (FRD) en grondwatermonitoringnetwerk (GMN).  
        **Merk op:** een buis-verwijzing kan beëindigd zijn in GMN. In dat geval wordt een buis-verwijzing einddatum teruggestuurd in het resultaat.  
        **Merk op:** een meetpunt kan beëindigd zijn in GMN. In dat geval wordt het GMN teruggestuurd zonder verdere informatie in het resultaat. Het is dus raadzaam om altijd te kijken of de relatie nog geldig is in het GMN registratie object en het meetpunt niet is beëindigd. In de toekomst nemen we deze casus wellicht ook mee op soortegelijke wijze als de buis-verwijzing einddatum.
      operationId: gmw-relations
      parameters:
        - description: Het BRO-ID van de grondwatermonitoringsput (GMW).
          example: GMW000000038500
          name: broId
          in: path
          required: true
          schema:
            type: string
        - description: |-
            Deze parameter bepaalt of er wel of niet kensetgegevens in de response staan. 
            Er zijn twee mogelijke waarden: true, false.
            Datums worden volgens ISO 8601 geformatteerd. 
            Bij afwezigheid van deze parameter worden er geen kensetgegevens teruggegeven.
          example: true
          name: inclMetadata
          in: query
          schema:
            type: boolean
            default: 'false'
      responses:
        '200':
          description: De gevraagde relaties.
          headers:
            API-Version:
              description: Versie van deze GM API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  gmwBroId:
                    type: string
                  monitoringTubeReferences:
                    type: array
                    items:
                      type: object
                      properties:
                        tubeNumber:
                          type: integer
                          format: int32
                        screenTopPosition:
                          type: number
                        gmnReferences:
                          type: array
                          items:
                            type: object
                            properties:
                              broId:
                                type: string
                              url:
                                type: string
                              accountableParty:
                                type: string
                              tubeReferenceEndDate:
                                type: string
                              characteristics:
                                type: object
                                properties:
                                  broId:
                                    type: string
                                  qualityRegime:
                                    type: string
                                  deliveryAccountableParty:
                                    type: string
                                  objectRegistrationTime:
                                    type: string
                                  latestCorrectionTime:
                                    type: string
                                  underReview:
                                    type: string
                                  underReviewTime:
                                    type: string
                                  deregistered:
                                    type: string
                        gldReferences:
                          type: array
                          items:
                            type: object
                            properties:
                              broId:
                                type: string
                              url:
                                type: string
                              accountableParty:
                                type: string
                              tubeReferenceEndDate:
                                type: string
                              characteristics:
                                type: object
                                properties:
                                  broId:
                                    type: string
                                  qualityRegime:
                                    type: string
                                  deliveryAccountableParty:
                                    type: string
                                  objectRegistrationTime:
                                    type: string
                                  latestCorrectionTime:
                                    type: string
                                  underReview:
                                    type: string
                                  underReviewTime:
                                    type: string
                                  deregistered:
                                    type: string
                        garReferences:
                          type: array
                          items:
                            type: object
                            properties:
                              broId:
                                type: string
                              url:
                                type: string
                              accountableParty:
                                type: string
                              tubeReferenceEndDate:
                                type: string
                              characteristics:
                                type: object
                                properties:
                                  broId:
                                    type: string
                                  qualityRegime:
                                    type: string
                                  deliveryAccountableParty:
                                    type: string
                                  objectRegistrationTime:
                                    type: string
                                  latestCorrectionTime:
                                    type: string
                                  underReview:
                                    type: string
                                  underReviewTime:
                                    type: string
                                  deregistered:
                                    type: string
                  characteristics:
                    type: object
                    properties:
                      broId:
                        type: string
                      qualityRegime:
                        type: string
                      deliveryAccountableParty:
                        type: string
                      objectRegistrationTime:
                        type: string
                      latestCorrectionTime:
                        type: string
                      underReview:
                        type: string
                      underReviewTime:
                        type: string
                      deregistered:
                        type: string
                      numberOfMonitoringTubes:
                        type: integer
                        format: int32
                      nitgCode:
                        type: string
                      wellCode:
                        type: string
                      owner:
                        type: string
                      wellConstructionDate:
                        type: string
                      wellRemovalDate:
                        type: string
                      constructionStandard:
                        type: object
                        required:
                          - codeSpace
                          - value
                        properties:
                          codeSpace:
                            type: string
                          value:
                            type: string
                          attributes:
                            type: object
                            additionalProperties:
                              type: string
                      initialFunction:
                        type: object
                        required:
                          - codeSpace
                          - value
                        properties:
                          codeSpace:
                            type: string
                          value:
                            type: string
                          attributes:
                            type: object
                            additionalProperties:
                              type: string
                      wellHeadProtector:
                        type: object
                        required:
                          - codeSpace
                          - value
                        properties:
                          codeSpace:
                            type: string
                          value:
                            type: string
                          attributes:
                            type: object
                            additionalProperties:
                              type: string
                      offset:
                        type: number
                      localVerticalReferencePoint:
                        type: object
                        required:
                          - codeSpace
                          - value
                        properties:
                          codeSpace:
                            type: string
                          value:
                            type: string
                          attributes:
                            type: object
                            additionalProperties:
                              type: string
                      verticalDatum:
                        type: object
                        required:
                          - codeSpace
                          - value
                        properties:
                          codeSpace:
                            type: string
                          value:
                            type: string
                          attributes:
                            type: object
                            additionalProperties:
                              type: string
                      groundLevelPosition:
                        type: number
        '400':
          description: Er bevinden zich fouten in het verzoek.
          headers:
            API-Version:
              description: Versie van deze GM API
              schema:
                type: string
                examples:
                  - 3.2.1
          content:
            application/json:
              schema:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  errorCode:
                    type: integer
                    format: int32
info:
  title: Grondwater Monitoring (GM) domein
  version: 2.197.0
  description: Landelijke Voorziening Basisregistratie Ondergrond (BRO), uitgifte grondwatermonitoring (GM) in samenhang.
  contact:
    name: BRO Servicedesk
    email: support@broservicedesk.nl
    url: https://basisregistratieondergrond.nl/service-contact/
