---
openapi: 3.0.3
info:
  title: BoreholeResearch (BHR-GT)
  description: "Landelijke Voorziening Basisregistratie Ondergrond (BRO), weergave\
    \ en extractie boorprofiel (Geotechnical BoreholeResearch, BHR-GT)."
  contact:
    name: BRO Servicedesk
    url: https://basisregistratieondergrond.nl/service-contact/
    email: support@broservicedesk.nl
  version: 3.172.5
paths:
  /sr/bhrgt/v2/bro-ids:
    get:
      summary: Lijst van BRO-IDs
      description: "EXPERIMENTEEL. Haalt de lijst van BHR-GT bro-ids op waarvoor [bronhouder](https://basisregistratieondergrond.nl/service-contact/formulieren/aangemeld-bro/)\
        \ verantwoordelijk is."
      operationId: bro-ids
      parameters:
      - name: bronhouder
        in: query
        description: Het kvk (kamer van koophandel) nummer van een bronhouder
        required: true
        schema:
          type: string
        example: 12345678
      - name: registered
        in: query
        description: "Registered is een optionele parameter, bij afwezigheid geeft\
          \ deze methode alle BRO-IDs terug onafhankelijk of die wel/niet uit registratie\
          \ zijn genomen. <BR>registered = ja geeft alleen BRO-IDs terug die in registratie\
          \ zijn genomen. <BR>registered = nee geeft alleen BRO-IDs terug die uit\
          \ registratie zijn genomen."
        schema:
          type: string
      responses:
        "200":
          description: De lijst van bro-ids voor dit registratie object type waarvoor
            bronhouder verantwoordelijk is.
          content:
            application/json: {}
        "400":
          description: Er bevinden zich andere fouten in het verzoek.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServiceError"
  /sr/bhrgt/v2/characteristics/searches:
    post:
      summary: "Haalt de karakteristieken op van een set van registratie objecten,\
        \ gegeven een kenmerkenverzameling (kenset)."
      description: "De karakteristieken geven een samenvatting van een object zodat\
        \ een verdere selectie gemaakt kan worden. Het past in een twee-traps-benadering,\
        \ waarbij de eerste stap bestaat uit het ophalen van de karakteristieken en\
        \ de 2e stap uit het ophalen van de gewenste registratie objecten. Het resultaat\
        \ van deze operatie is gemaximaliseerd op 2000. Zie [hier](https://bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/booronderzoek-bhr/geotechnisch-booronderzoek-bhr-gt/berichtencatalogus-uitgiftewebservice-bhr-gt)\
        \ voor meer info."
      operationId: characteristics
      parameters:
      - name: requestReference
        in: query
        description: Een optionele referentie van de gebruiker. "-" wordt aangenomen
          bij afwezigheid.
        schema:
          type: string
        example: Mijn-aanvraag-000001
      requestBody:
        description: "De set van kenmerken. Zie voor meer informatie: https://bro-productomgeving.nl/bpo/latest/"
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BhrGtCriteriaSet"
            examples:
              Simple Criteria:
                value:
                  registrationPeriod:
                    beginDate: 2017-01-01
                    endDate: 2021-01-01
                  area:
                    enclosingCircle:
                      center:
                        lat: 52.038297852
                        lon: 5.31447958948
                      radius: 0.5
      responses:
        "200":
          description: De set van karakteristieken die matched met de criteria dan
            wel een afwijzing.
          content:
            application/xml: {}
        "400":
          description: Er bevinden zich andere fouten in het verzoek.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServiceError"
  /sr/bhrgt/v2/objects/{broId}:
    get:
      summary: "Haalt een geotechnisch booronderzoek ( geotechnical boreholeresearch\
        \ survey, BHRGT) op op basis van een BRO-ID"
      description: "Haal een geotechnisch booronderzoek op op basis van een BRO-ID.\
        \ De operatie retourneert een object op basis van het BRO-ID als een 'O' (actuele\
        \ situatie), of 'DO' (uit registratie) als IMBRO XML. De andere variant 'O-DP'\
        \ is niet ondersteund omdat hier authenticatie / autorisatie voor nodig is\
        \ (er worden bronhouder gevoelige gegevens terug gegeven). Gebruik hiervoor\
        \ de 'DigiKoppeling' webservice. Zie [hier](https://bro-productomgeving.nl/bpo/latest/bodem-en-grondonderzoek/booronderzoek-bhr/geotechnisch-booronderzoek-bhr-gt/berichtencatalogus-uitgiftewebservice-bhr-gt)\
        \ voor meer info."
      operationId: objects
      parameters:
      - name: broId
        in: path
        description: Het BRO-ID van het object.
        required: true
        content:
          text/plain:
            schema:
              type: string
      - name: requestReference
        in: query
        description: Een optionele referentie van de gebruiker. "-" wordt aangenomen
          bij afwezigheid.
        schema:
          type: string
        example: Mijn-object-aanvraag-000001
      responses:
        "200":
          description: Het aangevraagde registratie object dan wel een afwijzing van
            het verzoek.
          content:
            application/xml: {}
        "400":
          description: Er bevinden zich andere fouten in het verzoek.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServiceError"
components:
  schemas:
    Area:
      type: object
      properties:
        enclosingCircle:
          $ref: "#/components/schemas/Circle"
        boundingBox:
          $ref: "#/components/schemas/Envelope"
    BhrGtCriteriaSet:
      required:
      - area
      type: object
      properties:
        deliveryAccountableParty:
          type: string
        qualityRegime:
          $ref: "#/components/schemas/QualityRegime"
        registrationPeriod:
          $ref: "#/components/schemas/DatePeriod"
        correctionPeriod:
          $ref: "#/components/schemas/DatePeriod"
        underReview:
          $ref: "#/components/schemas/YesNoEnumeration"
        area:
          $ref: "#/components/schemas/Area"
        discipline:
          type: string
        fieldworkPeriod:
          $ref: "#/components/schemas/DatePeriod"
        rockReached:
          $ref: "#/components/schemas/YesNoEnumeration"
        depthInterval:
          $ref: "#/components/schemas/DepthInterval"
        samplingQuality:
          type: array
          items:
            type: string
        descriptionReportPeriod:
          $ref: "#/components/schemas/DatePeriod"
        descriptionProcedure:
          type: string
        descriptionQuality:
          type: string
        analysisReportPeriod:
          $ref: "#/components/schemas/DatePeriod"
        analysisType:
          type: string
        waterContentDetermined:
          $ref: "#/components/schemas/YesNoEnumeration"
        organicMatterContentDetermined:
          $ref: "#/components/schemas/YesNoEnumeration"
        carbonateContentDetermined:
          $ref: "#/components/schemas/YesNoEnumeration"
        volumetricMassDensityDetermined:
          $ref: "#/components/schemas/YesNoEnumeration"
        volumetricMassDensitySolidsDetermined:
          $ref: "#/components/schemas/YesNoEnumeration"
    Circle:
      type: object
      properties:
        center:
          $ref: "#/components/schemas/Point"
        radius:
          type: number
    DatePeriod:
      type: object
      properties:
        beginDate:
          type: string
        endDate:
          type: string
    DepthInterval:
      type: object
      properties:
        startDepth:
          type: number
        endDepth:
          type: number
    Envelope:
      type: object
      properties:
        lowerCorner:
          $ref: "#/components/schemas/Point"
        upperCorner:
          $ref: "#/components/schemas/Point"
    Point:
      type: object
      properties:
        lat:
          type: number
        lon:
          type: number
    QualityRegime:
      enum:
      - IMBRO
      - IMBRO_A
      type: string
    ServiceError:
      type: object
      properties:
        title:
          type: string
        description:
          type: string
        errorCode:
          format: int32
          type: integer
    YesNoEnumeration:
      enum:
      - JA
      - NEE
      type: string
